# 一位老朋友說需要微信登錄授權的后臺,我便在空閑的時間集成了spring security 和 微信 sdk 登錄, 開箱即用。
? * 可以拓展為多公眾登錄。
? * 可以拓展手機號登錄
? * 模仿微信的登錄攔截,可以實現(xiàn)更多的第三方登錄,如抖音,微博,github 等。
? * 將近 2 個小時的勞動成果,且行且珍惜!
? * 技術棧:
spring security ,jpa, weixin-java-mp(微信授權sdk 網(wǎng)上有,亦或倉庫也可以找到其他同類產(chǎn)品,如小程序登錄,微信支付等),
jwt, spring session(會問:有jwt還需要session? 這里是問了解決 jwt主動失效問題,有jwt 拿用戶信息比較簡單。
當然你可以用redis 存儲jwt 的key, 或者直接使用一個 session 或者jwt 本項目已做好了兼容)
話不多說:干貨走起!
一 。創(chuàng)建類:WebSecurityConfig 繼承?WebSecurityConfigurerAdapter


二。實現(xiàn)UserDetailServce 接口

三。仿照 UsernamePasswordAuthenticationFilter 繼承?AbstractAuthenticationProcessingFilter? 并且定義 路徑: /wx/login,支持get ,post登錄



測試: 微信開發(fā)者工具輸入:localhost:8080/wx/login

返回授權界面:

后臺打?。?/p>

點擊確認登錄,成功后返回:

返回的json 你可以自定義:
實現(xiàn)接口即可,例如:

然后注入:

好了,不管看沒看懂,都點個贊吧!如需幫助,下面留言!
源碼開源:https://gitee.com/dengshidang/spring-security-weixin.git