JustAuth1.9.0版本正式来袭!Teambition、人人、Pinterest、Stack Overflow等尽收眼底!
首先感谢各位朋友对JustAuth的关注,JustAuth在过去一周左右的时间内,增加了600+的关注,在这儿感谢各位的厚爱!感谢朋友们能使用这个开源插件进行第三方oauth授权登录,也感谢@春哥给出的一些代码优化建议。
当然,JustAuth的发展也离不开各位朋友对JustAuth的无私贡献,比如:@skqing、@小凯 和 @Hongwei.Peng。尤其感谢 @小凯 和 @Hongwei.Peng两位小伙伴的大力输出!@小凯 基本全程参与了JustAuth的开发,贡献了QQ 登录、微信登录、小米登录、微软登录、谷歌登录的集成代码,以及对代码做了一些优化;@Hongwei.Peng刚加入不久,但也贡献了人人、Pinterest和StackOverflow的代码。当然,除此之外还有好多位朋友这儿就不一一列出,大家可以通过pr查看朋友们的贡献记录,十分感谢全体贡献者朋友的支持和帮助!
对于JustAuth,就像介绍中说的:如你所见,它仅仅是一个第三方授权登录的工具类库,它可以让我们脱离繁琐的第三方登录SDK,让登录变得So easy!
这款开源产品从开源之初到现在也一直都在奔着这个方向发展,它要做的只是:让一切登录都那么简单!
言归正传,今天(20190719)JustAuth正式发布1.9.0版本,该版本主要改动内容如下:
新增
- 集成 Teambition
- 集成 StackOverflow
- 集成 Pinterest
- 集成 人人
修改
ResponseStatus
改名为AuthResponseStatus
并且移动到me.zhyd.oauth.model
BaseAuthRequest
改名为AuthDefaultRequest
- 重构代码、新增编辑器规范,规范PR代码风格
AuthQqRequest
增加refresh方法- 使用lombok注解优化枚举类
- 优化
AuthConfig
、AuthResponse
类,去掉不必要的lombonk注解,减少编译后的代码量 - 优化百度授权流程,增加refresh token的方法
AuthUserGender
枚举类挪到enums
包下- 升级fastjson版本至1.2.58,避免安全漏洞。漏洞预警丨Fastjson远程代码执行漏洞
解决Bug
- 修复小米回调错误问题 同时 支持微信获取unionid
- 修复github无法获取用户信息的问题
其他
- 将CSDN相关的类置为
Deprecated
,后续可能会删除,也可能一直保留。毕竟CSDN的openAPI已经不对外开放了 - 删除
AuthBaiduErrorCode
和AuthDingTalkErrorCode
枚举类
针对本次更新,简单总结如下:
- 集成
Teambition
、StackOverflow
、Pinterest
、人人
的授权登录 - 重构部分代码,优化代码结构,减少编译后的代码量,新版jar大小为
104KB
,在新集成了四个平台的情况下,总体代码大小较上一版本,减少1/10
- 解决已知BUG。升级fastjson版本,避免安全漏洞(漏洞预警丨Fastjson远程代码执行漏洞)
JustAuth使用方式
引入依赖
<dependency>
<groupId>me.zhyd.oauth</groupId>
<artifactId>JustAuth</artifactId>
<version>1.9.0</version>
</dependency>
调用api
// 创建授权request
AuthRequest authRequest = new AuthGiteeRequest(AuthConfig.builder()
.clientId("clientId")
.clientSecret("clientSecret")
.redirectUri("redirectUri")
.state("state")
.build());
// 生成授权页面
authRequest.authorize();
// 授权登录后会返回code(auth_code(仅限支付宝))、state,1.8.0版本后,可以用AuthCallback类作为回调接口的参数
authRequest.login(callback);
关于state
参数的使用方式,请参考:JustAuth升级到v1.8.1版本,新增AuthState工具类,可自动生成state
项目源码
相关文章
其他开源作品
- blog-hunter,一款简单好用并且支持多个平台的博客爬取工具
- OneBlog,一个简洁美观、功能强大并且自适应的Java博客
- JustAuth,史上最全的整合第三方登录的工具,目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软和今日头条等第三方平台的授权登录。Login, so easy!
- spingboot-shiro,Springboot + shiro权限管理。这或许是流程最详细、代码最干净、配置最简单的shiro上手项目了。
- braum-spring-boot-starter,Braum可以很方便的帮助开发人员过滤、识别恶意请求