80 Star 324 Fork 232

monkeyk7 / spring-oauth-client

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 5.12 KB
一键复制 编辑 原始数据 按行查看 历史

spring-oauth-client

spring-oauth-client depend on spring-oauth-server or MyOIDC, it is the oauth2 client demo project.

注意

  • 从 1.1 版本开始支持 spring-oauth-server config分支 (旧版本的spring-oauth-server 测试请使用 1.0 分支)
  • 从2.x版本开始支持 OAuth2.1 协议中的各功能 (对应 spring-oauth-server 的 v3.0.0 及以上版本)

项目用Maven管理

主要技术与版本号

  1. Java (openjdk 17)
  2. SpringBoot (3.1.5)
  3. thymeleaf (3.1.1.RELEASE)
  4. HttpClient (4.5.14)
  5. json-lib (2.4)
  6. logback (1.4.8)
前端使用的技术与版本号
  1. Angular-JS (1.1.5)
  2. Bootstrap (3.3.4)

在线测试

OAuth服务端项目请访问 spring-oauth-server
在线测试地址 https://andaily.com/spring-oauth-client/ (v1.x版本)

如何使用?

前提: 在使用之前必须保证 spring-oauth-server 项目已正常运行.

  1. 项目是Maven管理的, 需要本地安装maven(开发用的maven版本号为3.6.0)
  2. 下载(或clone)项目到本地
  3. 修改application.properties(位于src/main/resources目录)中的配置信息(主要包括与spring-oauth-server的连接地址)
  4. 将本地项目导入到IDE(如Intellij IDEA)中, 直接运行启动类 SpringOAuthClientApplication.java, 通过浏览器访问即可(默认端口 8082).
    所有的操作说明都在页面上体现.
    另: 也可通过maven package命令将项目编译为jar文件(spring-oauth-client.jar), 然后通过java -jar命令运行.
  5. 若在Android或移动设备中使用, 可查看示例代码 AndroidClientTest.java(位于 src/master/src /test /java /com/andaily/springoauth/client/目录). 里面包括获取 access_token 与 调用API的示例.


实现思路

spring-oauth-client 的实现没有使用开源项目 spring-security-oauth2 中提供的代码与配置, 如:<oauth:client id="oauth2ClientFilter" />

而是按照OAuth2协议支持的各类grant_type依次去实现.
详见博客 https://andaily.com/blog/?p=103

项目的开发管理使用开源项目 andaily-developer.


项目日志

  1. 2015-03-17 项目创建

  2. 2015-06-02 V-0.1版本发布

  3. 2015-11-16 添加在线测试, 访问地址 http://andaily.com/spring-oauth-client/

  4. 2018-04-16 V-1.0发布; 开始V-1.1,增加对OIDC协议支持

  5. 2023-11-04 v2.0.0准备开发, 升级支持spring-oauth-server中 OAuth2.1与OIDC 1.0 协议

  6. 2023-11-09 v2.0.0发布


参考资源

以下是在开发与学习过程中参考的Oauth资源,总结下来方便学习回顾.


周边相关

与项目相关的技术文章请访问 https://andaily.com/blog/?cat=19 (不断更新与OAuth/OIDC相关的文章)

问答与讨论
与项目相关的,与OAuth相关的问题与回答,以及各类讨论请访问
https://andaily.com/blog/?dwqa-question_category=oauth 或提 issue


关注更多我的开源项目请访问 https://andaily.com/my_projects.html

若需更多的技术支持请联系 monkeyk@shengzhaoli.com


Expect your joining...
Java
1
https://gitee.com/mkk/spring-oauth-client.git
git@gitee.com:mkk/spring-oauth-client.git
mkk
spring-oauth-client
spring-oauth-client
master

搜索帮助