Skip to content

💯 史上最全的整合第三方登录的开源库。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest、人人、华为、企业微信、酷家乐和Gitlab等第三方平台的授权登录。 Login, so easy!

License

Notifications You must be signed in to change notification settings

spps-lab/JustAuth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Login, so easy.

star github star

查看更多

JustAuth,如你所见,它仅仅是一个第三方授权登录工具类库,它可以让我们脱离繁琐的第三方登录SDK,让登录变得So easy!

项目开源地址:gitee | github
项目文档:参考文档

特点

废话不多说,就俩字:

  1. :已集成十多家第三方平台(国内外常用的基本都已包含),仍然还在持续扩展中(开发计划)!
  2. :API就是奔着最简单去设计的(见后面快速开始),尽量让您用起来没有障碍感!

快速开始

  • 引入依赖
<dependency>
    <groupId>me.zhyd.oauth</groupId>
    <artifactId>JustAuth</artifactId>
    <version>1.15.1</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);

注意,JustAuth从v1.14.0开始默认集成了的simple-http作为HTTP通用接口(更新说明见JustAuth 1.14.0版本正式发布!完美解耦HTTP工具),鉴于一般项目中都已经集成了HTTP工具,比如OkHttp3、apache HttpClient、hutool-http,因此为了减少不必要的依赖,从v1.14.0开始JustAuth将不会默认集成hutool-http,如果开发者的项目是全新的或者项目内没有集成HTTP实现工具,请自行添加对应的HTTP实现类,备选依赖如下:

  • hutool-http

    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-http</artifactId>
        <version>5.2.5</version>
    </dependency>
  • httpclient

    <dependency>
    	<groupId>org.apache.httpcomponents</groupId>
      	<artifactId>httpclient</artifactId>
      	<version>4.5.12</version>
    </dependency>
  • okhttp

    <dependency>
      <groupId>com.squareup.okhttp3</groupId>
      <artifactId>okhttp</artifactId>
      <version>4.4.1</version>
    </dependency>

配套Demo**:

插件

具体的例子可以参考:

API列表

💻 平台 ☕ API类 📄 SDK
AuthGiteeRequest 参考文档
AuthGithubRequest 参考文档
AuthWeiboRequest 参考文档
AuthDingTalkRequest 参考文档
AuthBaiduRequest 参考文档
AuthCodingRequest 参考文档
AuthTencentCloudRequest 参考文档
AuthOschinaRequest 参考文档
AuthAlipayRequest 参考文档
AuthQqRequest 参考文档
AuthWeChatOpenRequest 参考文档
AuthWeChatMpRequest 参考文档
AuthWeChatEnterpriseRequest 参考文档
AuthTaobaoRequest 参考文档
AuthGoogleRequest 参考文档
AuthFacebookRequest 参考文档
AuthDouyinRequest 参考文档
AuthLinkedinRequest 参考文档
AuthMicrosoftRequest 参考文档
AuthMiRequest 参考文档
AuthToutiaoRequest 参考文档
AuthTeambitionRequest 参考文档
AuthRenrenRequest 参考文档
AuthPinterestRequest 参考文档
AuthStackOverflowRequest 参考文档
AuthHuaweiRequest 参考文档
AuthKujialeRequest 参考文档
AuthGitlabRequest 参考文档
AuthMeituanRequest 参考文档
AuthElemeRequest 参考文档
AuthTwitterRequest 参考文档
AuthCsdnRequest

请知悉:经咨询CSDN官方客服得知,CSDN的授权开放平台已经下线。如果以前申请过的应用,可以继续使用,但是不再支持申请新的应用。so, 本项目中的CSDN登录只能针对少部分用户使用了

后续开发计划

参考:[开发计划] 待扩展的第三方平台

另外,期待您和我一起完善这个项目!

贡献代码

  1. fork本项目到自己的repo
  2. 把fork过去的项目也就是你仓库中的项目clone到你的本地
  3. 修改代码
  4. commit后push到自己的库
  5. 发起PR(pull request) 请求,提交到dev分支
  6. 等待作者合并

贡献者名单

contributors

致谢

在项目立项初期,也对当前开源圈的一些相同类型的项目作过调研,同时本项目也参考过这些项目,再次感谢开源圈内的朋友。

图片引用自lets-mica

开源推荐

关于OAuth

关注&交流

公众号 微信(备注:加群)

QQ群

  • JustAuth交流群 (230017570):专业交流该项目

  • 开源总群 (190886500):各个开源项目的都有,也有博客建设等方面的朋友。

请喝咖啡

支付宝 微信

通过“爱发电”赞助,感谢您的支持

About

💯 史上最全的整合第三方登录的开源库。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest、人人、华为、企业微信、酷家乐和Gitlab等第三方平台的授权登录。 Login, so easy!

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 99.6%
  • Shell 0.4%