首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用token 机制做登录鉴权

登录流程:

一:登录成功后:

1,根据userId生成token,放入redis中 key为token,value为用户信息进行存储。

2,response token到前端的cookie中

3,threadlocal中存储user 信息

二:拦截器:

1,通过request获取前端的cookie,check token(有两个token ,token2根据token1生成)

2,token不为空的话,去redis中拿token为key查询user信息,如果user为空,直接返回false.

3,user不为空,刷新threadlocal中的user info,同时刷新redis中token : user的过期时间

扩展思路:

问:如果想实现一个账号如果被第二个人登录,第一个登录的会被顶掉,有思路吗:

redis : userId - token

token - user

我这样想的:登录succ-生成唯一token-redis存 userId:token ,token:user 。拦截器根据redis的token key 进行判断user是否为null;

如果第二个人登录此账户,同样的生成一个唯一token,根据userId查出redis中的所有token,然后遍历删除token:user。重新设置新的token:user

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191015A0F5VN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券