소스 검색

fix:修改提示文件下载报错问题

lazy 3 일 전
부모
커밋
4a69b57a02
1개의 변경된 파일21개의 추가작업 그리고 8개의 파일을 삭제
  1. 21 8
      src/utils/request.js

+ 21 - 8
src/utils/request.js

@@ -114,14 +114,27 @@ service.interceptors.response.use(
   },
   error => {
     loadingInstance && loadingInstance.close()
-    const { msg } = error.response.data
-    console.log('err' + error) // for debug
-    // '后端异常:' +
-    Message({
-      message: msg,
-      type: 'error',
-      duration: 5 * 1000
-    })
+    if (error.response.data instanceof ArrayBuffer) {
+      const textDecoder = new TextDecoder('utf-8')
+      const errorText = textDecoder.decode(error.response.data)
+
+      const errorJson = JSON.parse(errorText)
+
+      Message({
+        message: errorJson.msg || '文件下载失败',
+        type: 'error',
+        duration: 5 * 1000
+      })
+    } else {
+      const { msg } = error.response.data
+      console.log('err' + error) // for debug
+      // '后端异常:' +
+      Message({
+        message: msg,
+        type: 'error',
+        duration: 5 * 1000
+      })
+    }
     resetLogin(error.response)
     return Promise.reject(error)
   }