若依框架解读微服务版—— 3.验证码和登录
验证码
前端路由重写
之前已经讲过http://localhost/dev-api/code会在前端重写为http://localhost:8080/code。
请求第一步会进入网关模块
网关相关知识:Gateway基于的WebFlux框架,与我们平时用的WebMVC是不太一样的。网关由Route(路由)、Predicate(断言)、Filter(过滤器)组成。
详情可查看我之前写的文章:Spring Cloud Alibaba(一)——Gateway SpringCloud Gateway集成Alibaba Nacos实现动态路由配置
我们查看有关验证码的请求:
我们找到/code请求的位置 可以ctrl shift R 全局搜索寻找/code的位置
我们可以看到这里指向到validateCodeHandler处理
我们进入validateCodeHandler
我们打个断点查看 验证码逻辑
@符号之前的7 5=?生成图片经过base64编码 传给前端
答案12放在redis当中 有效期2分钟
返回的数据由uuid 图片
uuid也作为redis中key的一部分,后面用户登录的时候需要传回然后去对比redis当中的答案(保证每个请求都有一个自己独立的答案)
登录
相关知识:若依框架解读(微服务版)—— 1.登录逻辑
我们打个断点进入login方法
此处remoteUserService.getUserInfo()通过openFeign远程调用其他微服务获取用户信息
日志记录方法recordLogService.recordLogininfor()内部也是通过openFeign远程调用日志服务
详情可看若依框架解读(微服务版)——2.模块间的调用逻辑(ruoyi-api模块)(OpenFeign)
接下来就比较简单了。Jwt也比较简单。相关知识:JWT详解
生成token返回。redis里面token(ps:这里的token只是一个uuid,往前端返回的map里面的access_token才是token)为key,将用户信息为值存入redis。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgaaake
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13