有没有做过无感登录?

目录

1.解决方案

2.实现流程


1.解决方案

        无感登录实际上就是无感刷新 token

        1.在响应器中拦截,判断 token 返回过期后,调用刷新 token 的接口。

        2.后端返回过期时间,前端判断 token 的过期时间,去调用刷新 token 的接口。

        3.写一个定时器,定时刷新 token。

        我们常用的第一种方法实现无感登录。

2.实现流程

1.登录流程

        用户输入用户名和密码进行登录。

        后端验证用户信息,如果验证通过,返回一个 token 和 refresh_token。

        前端将 token 和 refresh_token 保存在本地(例如 localStorage)。

2.拦截响应

        在前端,我们可以在响应拦截器中处理返回的响应。

        如果返回的状态码为401(未授权),说明 token 已经过期。

3.刷新 token

        使用本地保存的 refresh_token 来请求新的 token。

        请求时可以携带当前 token 的过期时间,以便后端可以更精确地控制新 token 的过期时间。

4.替换 token

        一旦新的 token 返回,前端将其保存,并替换本地旧的 token。

5.处理请求

        前端将新的 token 放入未完成的请求中,并重新发送请求。

6.错误处理

        如果 refresh_token 也过期了,那么需要重新登录。清除所有过期的 token,然后重新执行登录流程。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值