一、简介
JustAuth脚手架目前已经对接了大多数常用的平台,包括微信、QQ、企业微信、钉钉、飞书、支付宝等。并且注释都是中文,非常便于阅读。本文章以飞书和企业微信为例做一个测试用例。
pom依赖引入
<dependency>
<groupId>com.xkcoding.justauth</groupId>
<artifactId>justauth-spring-boot-starter</artifactId>
<version>1.3.5</version>
</dependency>
github地址:https://github.com/justauth/justauth-spring-boot-starter
注: github上也是中文描述,很利于阅读,建议看一下描述以及更新日志。飞书是在1.3.5集成的。
二、集成飞书
1、首先下载它在github上提供的demo(地址:demo下载)。
2、在【飞书开发者后台】-【安全设置】中,将demo的callback地址填写进去。
3、然后,在demo的application.yml中,将飞书的配置加入进来(我这边是先创建一个自建应用,然后赋权,将app_id和app_secret填入)。
4、运行项目,在浏览器地址栏中输入 http://localhost:8443/oauth/login/feishu
(类比前端访问),它将会跳转到一个授权登录页面地址(这个页面实际上就是飞书接口提供的真实的授权页面),扫码(或者点击授权按钮)即可登录,然后会返回个人信息。这个demo中,浏览器会将个人信息展示到浏览器中,如果成功了就可以看到个人信息。
三、集成企业微信
1、企业微信需要填写agent-id,也就是自建应用id。其他内容对应的,client_id为企业id,client_secret需要在自建应用查看。
查看地址:【管理后台】-【应用管理】-【自建】,然后选择对应的应用查看。
2、在自建应用中配置网页回调地址,地址【网页授权微信登录】。
配置web回调域。
注:这里没有办法配置localhost地址,但是可以配置127.0.0.1。所以要么使用nginx进行本地转发,要么就部署到线上,或者通过frp之类的工具穿透来进行本地测试。
3、然后跟飞书一样,访问相应地址进行测试即可。
四、总结
实际上,授权登录集成有些地方略有不同,但大多数都是一样的,使用justauth可以帮助我们更方便的对接。主要是需要注意github上提示的一些内容,其中一部分在它源码中也有所判断和提到。