介绍:小而全而美的第三方登录开源组件。目前已支持Github、Gitee、微博、钉钉、百度、Coding
、腾讯云开发者平台、OSChina
、支付宝、QQ、微信、淘宝、Google
、Facebook
、抖音、领英、小米、微软、今日头条、Teambition
、StackOverflow
、Pinterest
、人人、华为、企业微信、酷家乐、Gitlab
、美团、饿了么和推特等第三方平台的授权登录。 Login, so easy!
什么是 JustAuth?
JustAuth
,如你所见,它仅仅是一个第三方授权登录的工具类库,它可以让我们脱离繁琐的第三方登录 SDK,让登录变得So easy!
JustAuth
集成了诸如:Github
、Gitee
、支付宝、新浪微博、微信、Google
、Facebook
、Twitter
、StackOverflow
等国内外数十家第三方平台。更多请参考已集成的平台
有哪些特点?
全:已集成十多家第三方平台(国内外常用的基本都已包含),仍然还在持续扩展中(开发计划)!
简:API就是奔着最简单去设计的(见后面快速开始),尽量让您用起来没有障碍感!
有哪些功能?
集成国内外数十家第三方平台,实现快速接入。
自定义 State
缓存,支持各种分布式缓存组件。
自定义 OAuth
平台,更容易适配自有的 OAuth 服务。
自定义 Http
实现,选择权完全交给开发者,不会单独依赖某一具体实现。
自定义 Scope
,支持更完善的授权体系。
快速开始
引入依赖
<dependency>
<groupId>me.zhyd.oauth</groupId>
<artifactId>JustAuth</artifactId>
<version>1.15.7-beta.3</version>
</dependency>
调用api
// 创建授权request
AuthRequest authRequest = new AuthGiteeRequest(AuthConfig.builder()
.clientId("clientId")
.clientSecret("clientSecret")
.redirectUri("redirectUri")
.build());
// 生成授权页面
authRequest.authorize("state");
// 授权登录后会返回code(auth_code(仅限支付宝))、state,1.8.0版本后,可以用AuthCallback类作为回调接口的参数
// 注:JustAuth默认保存state的时效为3分钟,3分钟内未使用则会自动清除过期的state
authRequest.login(callback);
如下任选一种 HTTP
工具 依赖,项目内如果已有,请忽略。另外需要特别注意,如果项目中已经引入了低版本的依赖,请先排除低版本以后来,引入高版本或者最新版本的依赖
hutool-http
<groupId>cn.hutool</groupId> <artifactId>hutool-http</artifactId> <version>5.2.5</version>
httpclient
<groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.12</version>
okhttp
<groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>4.4.1</version>