Michael Wang 3 ani în urmă
părinte
comite
24924e4a89
3 a modificat fișierele cu 25 adăugiri și 14 ștergeri
  1. 2 1
      src/App.vue
  2. 0 1
      src/features/OfflineExam/OfflineExamList.vue
  3. 23 12
      src/utils/axios.js

+ 2 - 1
src/App.vue

@@ -84,7 +84,8 @@ export default {
                 ) {
                   if (res.data) {
                     // console.log(res.data);
-                    const [switchScreenCount, maxSwitchScreenCount] = res.data;
+                    const { switchScreenCount, maxSwitchScreenCount } =
+                      res.data;
                     if (
                       typeof switchScreenCount === "number" &&
                       typeof maxSwitchScreenCount === "number"

+ 0 - 1
src/features/OfflineExam/OfflineExamList.vue

@@ -246,7 +246,6 @@ export default {
           "/PAPER/offLine",
         { responseType: "blob" }
       );
-      console.log(res);
       console.log(
         "离线考试,下载试卷:名称:",
         res.headers["content-disposition"]

+ 23 - 12
src/utils/axios.js

@@ -257,23 +257,34 @@ qmInstance.interceptors.response.use(
         }, 3 * 1000);
       }
 
+      function showDescOrNot(descMaybe) {
+        if (descMaybe && descMaybe.desc) {
+          Message.error({
+            content: descMaybe.desc,
+            duration: 15,
+            closable: true,
+          });
+        } else {
+          Message.error({
+            content: "未定义异常: " + JSON.stringify(descMaybe, 2),
+            duration: 15,
+            closable: true,
+          });
+        }
+      }
       const data = error.response.data;
-      if (data && data.desc) {
-        Message.error({
-          content: data.desc,
-          duration: 15,
-          closable: true,
+      console.log(data);
+      if (data instanceof Blob) {
+        data.text().then((res) => {
+          if (typeof res === "string") res = JSON.parse(res);
+          showDescOrNot(res);
         });
       } else {
-        Message.error({
-          content: "未定义异常: " + JSON.stringify(data, 2),
-          duration: 15,
-          closable: true,
-        });
+        showDescOrNot(data);
       }
-    }
 
-    return Promise.reject(error);
+      return Promise.reject(error);
+    }
   }
 );