소스 검색

优化登录失效的错误提示

Michael Wang 6 년 전
부모
커밋
0496386262
1개의 변경된 파일18개의 추가작업 그리고 6개의 파일을 삭제
  1. 18 6
      src/utils/axios.js

+ 18 - 6
src/utils/axios.js

@@ -66,7 +66,23 @@ qmInstance.interceptors.response.use(
     // 这里是返回状态码不为200时候的错误处理
     let status = error.response.status;
 
-    if (status != 200) {
+    // 登录失效 跳转登录页面
+    if (status == 403 || status == 401) {
+      if (
+        window.___lastInvalidDate === undefined ||
+        window.___lastInvalidDate < Date.now() - 300
+      ) {
+        Message.error({
+          content: "登录失效,请重新登录!",
+          duration: 6,
+          closable: true
+        });
+        window.___lastInvalidDate = Date.now();
+      }
+      wk_token = null;
+      router.push("/login/" + localStorage.getItem("domain"));
+      return; // 仅显示登录失效,不显示因登录失效造成的后续错误
+    } else if (status != 200) {
       if (
         wk_token &&
         ![401, 403].includes(status) &&
@@ -100,11 +116,7 @@ qmInstance.interceptors.response.use(
         });
       }
     }
-    // 登录失效 跳转登录页面
-    if (status == 403 || status == 401) {
-      wk_token = null;
-      router.push("/login/" + localStorage.getItem("domain"));
-    }
+
     return Promise.reject(error);
   }
 );