[软技能] 第1435天 如何实现无感刷新token?

179 阅读1分钟
  1. 客户端在登录时获取到 token,并在本地存储一份,同时将 token 发送到服务器端进行验证。服务器端验证通过后,将生成一个新的 token,并将其返回给客户端。
  2. 客户端在每次请求时,将 token 添加到请求头中,以供服务器端进行验证。如果 token 未过期,则服务器端返回请求结果;如果 token 过期,则服务器端返回状态码 401。
  3. 客户端在接收到状态码 401 后,通过本地存储中保存的 token 刷新 token。可以将刷新 token 的请求封装成一个 Promise 对象,通过 Promise 对象的 then() 方法进行回调,获取刷新后的新 token。这里需要注意,如果刷新 token 的请求返回的状态码也是 401,则说明刷新失败,此时可以跳转到登录页面。
  4. 客户端在获取到新的 token 后,将其存储到本地,并在之后的请求中使用新的 token

需要注意的是,在无感刷新 token 的过程中,需要对 token 进行加密和解密,以确保 token 的安全性。同时,在刷新 token 的请求中,需要将旧的 token 传递给服务器端,以便服务器端进行验证。

更多题目

github.com/haizlin/fe-…