SuperCode登录业务流程简述

SuperCode登录业务讲解
1.先看业务流程图
登录业务流程图

2.因为是前后端分离项目所以用了Jwt进行用户状态的鉴权等。然后可能有有人问,在使用UUID,不就有点多此一举了吗?强行解释一波,因为有在线人员的管理功能(强踢),而如果单纯的使用Jwt进行鉴权,解析出来的用户ID,然后进行强踢,这样的话就会有一个问题:如果允许同一个账号允许多地同时登录的话,那就不知道该踢哪个用户的链接了,所以通过UUID来进行用户强踢功能,所以才有了UUID的生成逻辑.

3.用户登录的时候,生成UUID+Jwt字符串,保存到redis缓存中,在线用户列表就可以直接读取redis来获取对应的数据

4.UUID的另外一个存在的原因是:基于Jwt的过期策略,考虑到安全性问题,所以Jwt过期时间设置为了30分钟,所以如果用户长时间登录操作的话,就会遇到jwt的过期问题,基于这个问题,其实有很多操作方式
方式一:前端用户在请求的时候,如果返回是未登录状态,则自动请求下登录接口,在执行当前接口的数据获取,这样话用户体验可能会有卡顿问题
方式二:前端vue有一个定时器,进行刷新jwt的时间,这样才是真正的无感操作,如果后端拿到jwt进行延时的话,在反向更新redis中的jwt数据可能会很麻烦,所以此处用UUID来快速确认redis中的数据进行更新

以上是用户登录的业务逻辑,相对比较简单,所以此处大致记录下。如果有老铁有更好的方案,欢迎评论指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

用心_承载未来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值