Browse Source

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

YunaiV 2 years ago
parent
commit
6ed624861d
1 changed files with 3 additions and 2 deletions
  1. 3 2
      yudao-ui-admin/src/utils/request.js

+ 3 - 2
yudao-ui-admin/src/utils/request.js

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