社交短信登录原理

pclin
11
2025-01-10

本教程适用 v4.6+ 版本。
👉🏻 旧版本 社交短信登录原理

#①验证码校验

获取从前端带过来的信息,进行验证码的校验

#②根据登录请求构建认证实体

  • 接受前端 /auth/oauth2/token 请求处理,(注意这里是 spring security authorization server 来接管这个请求)

- ① 请求URL 和密码登录一样
- ② mobile字段比较特殊为登录方式@标识
- ④ mobile 模式为扩展的支持短信&三方登录的实现模式

重点看下这个 ② 这里也就意味着可以支持 WX@OPENI_CODE 这种形式从而实现了三方登录

#③根据请求参数构建认证实体

由文档中 登录 token 生成源码解析 中能知道 PigDaoAuthenticationProvider 进行最后用户的处理

根据 grantType 进行社交登录的判断 从而进入 PigxMobileUserDetailServiceImpl 处理

#UserDetailsService 调用 Feign 查询用户信息

特别注意此处入参为: TYPE@XXX

#⑥ 匹配用户信息处理器查询

  • ① 截取认证方式,比如 SMS、WX

  • ② 通过方式去匹配对应的实现

    这个 loginHandlerMap 是 spring 自己注入的,key: bean 名称 、value: bean 实现类

动物装饰