一句话总结:只需引入一个依赖,几行代码即可搞定微信、支付宝、GitHub、Gitee、钉钉等 40+ 平台的统一授权登录,轻量、无侵入、生产可用。
💡 为什么需要它?
在做企业级项目或 SaaS 产品时,“第三方登录”几乎是标配。但实际开发中,我们往往会遇到这些痛点:
- 🔍 各平台文档风格迥异,OAuth2 流程实现反复踩坑
- 📦 官方 SDK 体积大、依赖重、升级频繁
- 🧩 每次新增一个平台都要重写授权链路,维护成本极高
- 🛡️ Token 刷新、用户信息解析、防重放攻击等细节容易遗漏
有没有一个统一、轻量、开箱即用的解决方案?当然有。今天给大家安利我日常开发中反复验证过的神器:JustAuth。
✨ 核心亮点
| 特性 | 说明 |
|---|---|
| 🌐 平台全覆盖 | 内置 GitHub、Gitee、微信、支付宝、QQ、钉钉、飞书、百度、华为、微博、Twitter、Google 等 40+ 主流平台 |
| 📦 极简接入 | 不依赖 Spring 等重型框架,纯 Java 实现,Maven/Gradle 一行引入即可使用 |
| 🛠 统一抽象 | 屏蔽各平台 OAuth2 差异,提供 AuthRequest 统一接口,授权、回调、获取用户信息一套流程走到底 |
| 🔌 高度可扩展 | 支持自定义平台扩展,内置丰富的默认用户字段解析,企业级项目可直接复用 |
| 📚 文档完善 & 活跃维护 | 详细接入指南 + Spring Boot Starter 扩展,Issue 响应快,生产环境验证充分 |
⚡ 快速上手(3 步搞定)
1️⃣ 引入依赖
xml
<groupId>me.zhyd.oauth</groupId>
<artifactId>JustAuth</artifactId>
<version>1.16.6</version> <!-- 请以仓库最新发布版本为准 -->
</dependency>
2️⃣ 初始化授权
java
AuthRequest authRequest = new AuthGiteeRequest(AuthConfig.builder()
.clientId("你的ClientID")
.clientSecret("你的ClientSecret")
.redirectUri("https://yourdomain.com/oauth/callback")
.build());
3️⃣ 发起授权 & 处理回调java
// 跳转授权页
String authorizeUrl = authRequest.authorize(AuthStateUtils.createState());
// 回调处理
AuthResponse response = authRequest.login(AuthCallback.builder()
.code("授权码")
.state("防CSRF状态码")
.build());
if (response.ok()) {
AuthUser user = (AuthUser) response.getData();
System.out.println("登录成功!用户昵称:" + user.getNickname());
System.out.println("头像地址:" + user.getAvatar());
}
💡 提示:实际项目中建议结合 Session/JWT 使用,并开启
state校验防 CSRF 攻击。
🌍 为什么选择 JustAuth?
- 不重复造轮子:把各平台的“脏活累活”封装干净,开发者只需关注业务逻辑。
- 轻量无侵入:没有强制绑定 Spring 生态,老项目、微服务、Serverless 都能无缝集成。
- 经过大规模验证:众多企业项目在生产环境使用,稳定性与安全性有保障。
- 开源友好:Gitee 高星项目,社区活跃,欢迎提 Issue 或 PR 共建生态。
📌 适合谁用?
- ✅ 正在搭建统一身份认证(SSO)系统的架构师
- ✅ 需要快速接入多平台登录的全栈/后端开发
- ✅ 希望减少第三方 SDK 依赖、控制包体积的团队
- ✅ 学习 OAuth2 授权流程的初学者(源码结构清晰,极佳学习案例)
🔗 项目地址 & 支持
- 📦 Gitee 仓库:https://gitee.com/thomasblog/JustAuth
- 📖 官方文档:仓库内含详细接入指南与 FAQ
- ⭐ 如果对你有帮助,欢迎 Star 支持,或提交 PR/Issue 一起完善它!

Thomas3 年前
发表在:SQL Server2008报错:值不能为空[S35]
Thomas3 年前
发表在:解决Composer Installing dependencies from lock file你这都看不清了
1112021-03-15 23:30
发表在:Cetnos7 新手安装ZABBIX4.0.5详解教程有人嘛
Tyreunorm2020-08-27 22:51
发表在:php5.6 连接SQL SERVER<a href=https://mega...
耗子2020-04-08 15:02
发表在:写给正在创业的自己看到了,想写点。可能我开过这网站了,以后...
Thomas2019-11-19 19:57
发表在:twcms您的IP地址已改变,为了安全考虑,请重新登录这个好
酷喵2016-08-03 15:22
发表在:我家侄女成长记前排支持啦!
五爷2015-12-01 03:26
发表在:关于centos中的相关查看命令@admin:呵呵
admin2015-12-01 01:49
发表在:关于centos中的相关查看命令非常不错