Commit 6ed624861dda453e4201a72bd569ed1164e4376b

Authored by YunaiV
1 parent a3687132

增加 refresh token 接口,并接入到前端项目

yudao-ui-admin/src/utils/request.js
@@ -9,7 +9,7 @@ import {refreshToken} from "@/api/login"; @@ -9,7 +9,7 @@ import {refreshToken} from "@/api/login";
9 9
10 // 是否显示重新登录 10 // 是否显示重新登录
11 export let isRelogin = { show: false }; 11 export let isRelogin = { show: false };
12 -// Axios 无感知刷新令牌,参考 https://www.dashingdog.cn/article/11 实现 12 +// Axios 无感知刷新令牌,参考 https://www.dashingdog.cn/article/11 与 https://segmentfault.com/a/1190000020210980 实现
13 // 请求队列 13 // 请求队列
14 let requestList = [] 14 let requestList = []
15 // 是否正在刷新中 15 // 是否正在刷新中
@@ -87,7 +87,8 @@ service.interceptors.response.use( async res => { @@ -87,7 +87,8 @@ service.interceptors.response.use( async res => {
87 requestList.forEach(cb => cb()) 87 requestList.forEach(cb => cb())
88 return service(res.config) 88 return service(res.config)
89 } catch (e) { 89 } catch (e) {
90 - // 2.1 刷新失败,则只能执行登出操作 90 + // 2.2 刷新失败,则只能执行登出操作
  91 + // 为什么需要 catch 异常呢?刷新失败时,请求因为 Promise.reject 触发异常。
91 return handleAuthorized(); 92 return handleAuthorized();
92 } finally { 93 } finally {
93 requestList = [] 94 requestList = []