From c4b49d08cef0805e17646eef03e1c1a62316c3b2 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期六, 05 十一月 2022 10:41:52 +0800
Subject: [PATCH] 1.产能规划优化

---
 src/utils/request.js |   88 +++++++++++++++++++++++++++++++------------
 1 files changed, 63 insertions(+), 25 deletions(-)

diff --git a/src/utils/request.js b/src/utils/request.js
index eeb81b4..79227b2 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -1,25 +1,31 @@
 import axios from 'axios'
 import { MessageBox, Message } from 'element-ui'
 import store from '@/store'
-import { getToken } from '@/utils/auth'
-
+import { getCookie, getToken, removeCookie, setCookie } from '@/utils/auth'
+import { handleDatetime } from '@/utils/global'
 // create an axios instance
+
 const service = axios.create({
   baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url
-  // withCredentials: true, // send cookies when cross-domain requests
-  timeout: 5000 // request timeout
+  withCredentials: true, // send cookies when cross-domain requests
+  timeout: 10000 // request timeout
 })
+// axios.defaults.withCredentials = true
 
 // request interceptor
 service.interceptors.request.use(
   config => {
     // do something before request is sent
 
-    if (store.getters.token) {
-      // let each request carry token
-      // ['X-Token'] is a custom headers key
-      // please modify it according to the actual situation
-      config.headers['X-Token'] = getToken()
+    if (getCookie('admin')) {
+    // let each request carry token
+    // ['X-Token'] is a custom headers key
+    // please modify it according to the actual situation
+    // config.headers['X-Token'] = getToken()
+    //   config.headers['Authorization'] = 'admin=' + getCookie('admin') + ';navTabId=' + getCookie('navTabId')
+    //   config.headers['Cookie'] = 'admin=' + getCookie('admin') + ';navTabId=' + getCookie('navTabId')
+    //   document.cookie = 'admin=' + getCookie('admin') + ';navTabId=' + getCookie('navTabId')
+    //   document.cookie = 'admin'
     }
     return config
   },
@@ -35,7 +41,7 @@
   /**
    * If you want to get http information such as headers or status
    * Please return  response => response
-  */
+   */
 
   /**
    * Determine the request status by custom code
@@ -46,28 +52,60 @@
     const res = response.data
 
     // if the custom code is not 20000, it is judged as an error.
-    if (res.code !== '200') {
+    if (res.code === '300' || res.code === '303') {
       Message({
         message: res.Message || 'Error',
         type: 'error',
         duration: 5 * 1000
       })
-
-      // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
-      if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
-        // to re-login
-        MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
-          confirmButtonText: 'Re-Login',
-          cancelButtonText: 'Cancel',
-          type: 'warning'
-        }).then(() => {
-          store.dispatch('user/resetToken').then(() => {
-            location.reload()
-          })
-        })
+      if (res.code === '303') {
+        removeCookie('ruleCode')
+        removeCookie('username')
+        removeCookie('admin')
+        removeCookie('navTabId')
+        removeCookie('usertype')
+        removeCookie('userid')
+        removeCookie('rediskey')
+        removeCookie('code')
+        removeCookie('guid')
+        setTimeout(() => {
+          sessionStorage.removeItem('tabViews')
+          window.location.reload()
+        }, 1000 * 2)
       }
+      // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+      // if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+      //   // to re-login
+      //   MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+      //     confirmButtonText: 'Re-Login',
+      //     cancelButtonText: 'Cancel',
+      //     type: 'warning'
+      //   }).then(() => {
+      //     store.dispatch('user/resetToken').then(() => {
+      //       location.reload()
+      //     })
+      //   })
+      // }
+      store.state.app.buttonIsDisabled = false // 灏嗘寜閽彉鍥炲彲鐐瑰嚮
       return Promise.reject(new Error(res.message || 'Error'))
-    } else {
+    }
+    // else if (res.code === '303') {
+    //   console.log(res.code, 888)
+    //   Message({
+    //     message: res.Message || 'Error',
+    //     type: 'error',
+    //     duration: 5 * 1000
+    //   })
+    //   removeCookie('ruleCode')
+    //   removeCookie('username')
+    //   removeCookie('admin')
+    //   removeCookie('navTabId')
+    //   removeCookie('usertype')
+    //   removeCookie('userid')
+    //   removeCookie('code')
+    //   this.$router.push({ path: this.redirect || '/' })
+    // }
+    else {
       return res
     }
   },

--
Gitblit v1.9.3