当访问令牌 access_toke 过期,后台会响应状态码 401 ,通过刷新令牌 refresh_toke 获取新令牌。获取后重新发送引发获取新令牌的请求。
1、请求拦截401错误实现刷新令牌请求
所有的请求后台数据,都是通过在 src/utils/request.js 封装的 axios 对象进行发送请求,所以当调用后台接口后,都可以在此 axios 对象对响应结果进行拦截。
当后台错误状态时,会进行 error {} 配置处理,所以当响应 401 错误状态码时,在 error 处进行拦截去进行通过刷新令牌获取新的认证信息:userInfo、access_token、refresh_token 。
刷新令牌获取新的认证信息,直接请求认证客户端 http://localhost:7000/refresh?redirectURL=xxx
- 在 src/utils/request.js 的 error 处触请求认证客户端刷新令牌。
// response interceptor
service.interceptors.response.use(