10分钟搞定低代码平台第三方登录:JustAuth插件开发终极指南
【免费下载链接】JustAuth🏆Gitee 最有价值开源项目 🚀:100: 小而全而美的第三方登录开源组件。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest、人人、华为、企业微信、酷家乐、Gitlab、美团、饿了么、推特、飞书、京东、阿里云、喜马拉雅、Amazon、Slack和 Line 等第三方平台的授权登录。 Login, so easy!项目地址: https://gitcode.com/gh_mirrors/ju/JustAuth
JustAuth是一款小而全而美的第三方登录开源组件,它可以让开发者脱离繁琐的第三方登录SDK,轻松实现多种平台的授权登录功能。目前已支持Github、Gitee、微博、钉钉、百度等数十家第三方平台的授权登录,让登录变得So easy!
为什么选择JustAuth?
全而简的第三方登录解决方案 🚀
JustAuth的核心优势在于其"全"和"简"的特点。已集成国内外数十家第三方平台,覆盖了几乎所有常用的授权登录渠道,并且还在持续扩展中。API设计简洁直观,让开发者能够快速上手,无需深入了解各平台复杂的授权流程。
丰富实用的功能特性 ✨
JustAuth提供了多种实用功能,包括:
- 快速集成国内外数十家第三方平台
- 自定义State缓存,支持各种分布式缓存组件
- 自定义OAuth平台,更容易适配自有的OAuth服务
- 自定义Http实现,选择权完全交给开发者
- 自定义Scope,支持更完善的授权体系
快速开始:10分钟集成步骤
第一步:引入依赖
在项目的pom.xml文件中添加JustAuth的依赖:
<dependency> <groupId>me.zhyd.oauth</groupId> <artifactId>JustAuth</artifactId> <version>{latest-version}</version> </dependency>同时,需要选择一个HTTP工具依赖,例如hutool-http:
<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-http</artifactId> <version>5.7.7</version> </dependency>第二步:配置授权信息
创建授权请求对象,配置第三方平台的clientId、clientSecret和redirectUri:
AuthRequest authRequest = new AuthGiteeRequest(AuthConfig.builder() .clientId("clientId") .clientSecret("clientSecret") .redirectUri("redirectUri") .build());第三步:生成授权页面
调用authorize方法生成授权页面链接:
// 生成授权页面 authRequest.authorize("state");第四步:处理授权回调
用户授权后,第三方平台会重定向到之前配置的redirectUri,并携带code和state参数。使用login方法处理回调:
// 处理回调 authRequest.login(callback);进阶使用:Builder方式创建请求
JustAuth提供了Builder方式来创建授权请求,更加灵活方便。
静态配置方式
AuthRequest authRequest = AuthRequestBuilder.builder() .source("github") .authConfig(AuthConfig.builder() .clientId("clientId") .clientSecret("clientSecret") .redirectUri("redirectUri") .build()) .build();动态配置方式
AuthRequest authRequest = AuthRequestBuilder.builder() .source("gitee") .authConfig((source) -> { // 通过 source 动态获取 AuthConfig return AuthConfig.builder() .clientId("clientId") .clientSecret("clientSecret") .redirectUri("redirectUri") .build(); }) .build();支持自定义平台
JustAuth还支持集成自定义的OAuth平台,只需将自定义实现的AuthSource配置上即可:
AuthRequest authRequest = AuthRequestBuilder.builder() // 关键点:将自定义实现的 AuthSource 配置上 .extendSource(AuthExtendSource.values()) // source 对应 AuthExtendSource 中的枚举 name .source("other") // ... 其他内容不变 .build();项目结构解析
JustAuth的核心代码位于src/main/java/me/zhyd/oauth目录下,主要包含以下几个部分:
- config:配置类,如AuthConfig.java、AuthDefaultSource.java等
- enums:枚举类,包括各种平台的Scope定义
- exception:异常处理类
- model:数据模型,如AuthCallback.java、AuthToken.java、AuthUser.java等
- request:各平台的授权请求实现类
- utils:工具类
总结
JustAuth作为一款优秀的第三方登录开源组件,以其全面的平台支持和简洁的API设计,为开发者提供了快速集成第三方登录的解决方案。无论是新手还是有经验的开发者,都能在短时间内掌握其使用方法,轻松实现多种平台的授权登录功能。
如果你正在开发低代码平台,需要集成第三方登录功能,JustAuth绝对是一个值得尝试的选择。它不仅能节省你的开发时间,还能提供稳定可靠的登录体验,让你的用户登录变得So easy!
参考资料
- 官方帮助文档:www.justauth.cn
- 项目源码地址:https://gitcode.com/gh_mirrors/ju/JustAuth
【免费下载链接】JustAuth🏆Gitee 最有价值开源项目 🚀:100: 小而全而美的第三方登录开源组件。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest、人人、华为、企业微信、酷家乐、Gitlab、美团、饿了么、推特、飞书、京东、阿里云、喜马拉雅、Amazon、Slack和 Line 等第三方平台的授权登录。 Login, so easy!项目地址: https://gitcode.com/gh_mirrors/ju/JustAuth
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考