From aec00ecc093be803860c8675cbe1c4c776a7cb4e Mon Sep 17 00:00:00 2001
From: GuLiMmo <2820890765@qq.com>
Date: Tue, 19 Mar 2024 17:49:21 +0800
Subject: [PATCH] update: 新建航线、事件编辑、kmz文件问题修改

---
 src/api/http/request.ts |   56 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 43 insertions(+), 13 deletions(-)

diff --git a/src/api/http/request.ts b/src/api/http/request.ts
index d1a0d6f..b66b2a9 100644
--- a/src/api/http/request.ts
+++ b/src/api/http/request.ts
@@ -1,25 +1,32 @@
+
 import axios from 'axios'
 import { uuidv4 } from '/@/utils/uuid'
 import { CURRENT_CONFIG } from './config'
+import { message } from 'ant-design-vue'
+import router from '/@/router'
+import { ELocalStorageKey, ERouterName, EUserType } from '/@/types/enums'
 export * from './type'
+
+const { baseUrl: { apiBaseUrl } } = window.globalApiConfig
+
 const REQUEST_ID = 'X-Request-Id'
 function getAuthToken () {
-  return localStorage.getItem('x-auth-token')
+  return localStorage.getItem(ELocalStorageKey.Token)
 }
-
 const instance = axios.create({
   // withCredentials: true,
   headers: {
     'Content-Type': 'application/json',
   },
+  baseURL: apiBaseUrl || import.meta.env.VITE_BASE_API,
   // timeout: 12000,
 })
 
 instance.interceptors.request.use(
   config => {
-    config.headers['X-Auth-Token'] = getAuthToken()
+    config.headers[ELocalStorageKey.Token] = localStorage.getItem(ELocalStorageKey.Token)
     // config.headers[REQUEST_ID] = uuidv4()
-    config.baseURL = CURRENT_CONFIG.baseURL
+    // config.baseURL = CURRENT_CONFIG.baseURL
     return config
   },
   error => {
@@ -28,10 +35,23 @@
 )
 
 instance.interceptors.response.use(
-  response => response,
+  response => {
+    // console.info('URL: ' + response.config.baseURL + response.config.url, '\nData: ', response.data, '\nResponse:', response)
+    const whiteList = ['/manage/api/v1/live/streams/stop']
+    if (whiteList.includes(response.config.url)) {
+      return Promise.reject(response.data)
+    }
+    // 处理消息返回
+    // if (response.data.code && !response.data.success) {
+    //   message.error(response.data.message)
+    // }
+    if (response.data.code && response.data.code !== 0) {
+      message.error(response.data.message)
+    }
+    return response
+  },
   err => {
     const requestId = err?.config?.headers && err?.config?.headers[REQUEST_ID]
-    console.info('')
     if (requestId) {
       console.info(REQUEST_ID, ':', requestId)
     }
@@ -46,17 +66,27 @@
     }
     // @See: https://github.com/axios/axios/issues/383
     if (!err.response || !err.response.status) {
-      console.log('The network is abnormal, please check the network and try again')
-    } else if (err.response?.status !== 200) {
-      console.log(`ERROR_CODE: ${err.response?.status}`)
+      message.error('网络异常,请检查后端服务后重试')
+      return
     }
-    if (err.response?.status === 403) {
-      // window.location.href = '/'
+    if (err.response?.status !== 200) {
+      message.error(`错误码: ${err.response?.status}`)
     }
+    // if (err.response?.status === 403) {
+    //   // window.location.href = '/'
+    // }
     if (err.response?.status === 401) {
-      console.log(err.response)
+      console.error(err.response)
+      const flag: number = Number(localStorage.getItem(ELocalStorageKey.Flag))
+      switch (flag) {
+        case EUserType.Web:
+          router.push(ERouterName.PROJECT_LIST)
+          break
+        case EUserType.Pilot:
+          router.push(ERouterName.PILOT)
+          break
+      }
     }
-
     return Promise.reject(err)
   },
 )

--
Gitblit v1.9.3