0
点赞
收藏
分享

微信扫一扫

前后端处理实时刷新refresh_token的使用

兵部尚输 2022-03-23 阅读 57
javavue.js

实现方案

后端生成两个token(token和refresh_token),token有效时间短,refresh_token有效时间长; 前端请求登录后,后端把这两个token传给前端,前端缓存下来;

  1. token未到期,前端可正常请求。
  2. token过期,后端会返回与前端约定好的相关参数(比如,响应码401),前端在返回拦截器中判断拦截,并将refresh_token替换掉已经失效的token去调用api_refresh_token的接口请求。后端则判断refresh_token是否过期。
    (1)refresh_token未过期,后端重新生成token和refresh_token返给前端。前端接收到后,缓存token,并重新执行之前失败的接口。
    (2)refresh_token过期,后端返回token失效,前端跳转到登录页。

分析

token和refresh_token的时间点需要实现的结果
token和refersh_token都没失效正常请求
token失效,refresh_token没失效请求提示token失效,前端需要调api_refresh_token的请求,获取新的token
token和refresh_token都失效请求提示token失效,前端需要调api_refresh_token的请求,请求失败,退出登录

代码实现

前端代码

后端代码

本文参考

https://blog.csdn.net/weixin_44115908/article/details/106063316

举报

相关推荐

0 条评论