From a7c3cf531640bb59aa90cb476b8c21db97f41ddb Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期日, 05 三月 2023 09:53:26 +0800
Subject: [PATCH] 优化跨域配置,支持同域的前后端分离部署

---
 web_src/src/main.js |   29 ++++++++++++++++++++++++-----
 1 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/web_src/src/main.js b/web_src/src/main.js
index 5e0696b..91bbd47 100644
--- a/web_src/src/main.js
+++ b/web_src/src/main.js
@@ -7,10 +7,14 @@
 import axios from 'axios';
 import VueCookies from 'vue-cookies';
 import echarts from 'echarts';
+import VCharts from 'v-charts';
 
 import VueClipboard from 'vue-clipboard2';
 import { Notification } from 'element-ui';
 import Fingerprint2 from 'fingerprintjs2';
+import VueClipboards from 'vue-clipboards';
+import Contextmenu from "vue-contextmenujs"
+
 
 // 鐢熸垚鍞竴ID
 Fingerprint2.get(function(components) {
@@ -20,7 +24,7 @@
     }
     return component.value;
   })
-  //console.log(values)  //浣跨敤鐨勬祻瑙堝櫒淇℃伅npm 
+  //console.log(values)  //浣跨敤鐨勬祻瑙堝櫒淇℃伅npm
   // 鐢熸垚鏈�缁坕d
   let port = window.location.port;
   console.log(port);
@@ -32,13 +36,28 @@
 Vue.use(VueClipboard);
 Vue.use(ElementUI);
 Vue.use(VueCookies);
-Vue.prototype.$axios = axios;
+Vue.use(VueClipboards);
+
 Vue.prototype.$notify = Notification;
+Vue.use(Contextmenu);
+Vue.use(VCharts);
 
-axios.defaults.baseURL = (process.env.NODE_ENV === 'development') ? process.env.BASE_API : "";
-
+axios.defaults.baseURL = (process.env.NODE_ENV === 'development') ? process.env.BASE_API : (window.baseUrl?window.baseUrl:"");
+axios.defaults.withCredentials = true;
+// api 杩斿洖401鑷姩鍥炵櫥闄嗛〉闈�
+axios.interceptors.response.use(function (response) {
+  // 瀵瑰搷搴旀暟鎹仛鐐逛粈涔�
+  return response;
+}, function (error) {
+  // 瀵瑰搷搴旈敊璇仛鐐逛粈涔�
+  if (error.response.status === 401) {
+    console.log("Received 401 Response")
+    router.push('/login');
+  }
+  return Promise.reject(error);
+});
+Vue.prototype.$axios = axios;
 Vue.prototype.$cookies.config(60*30);
-
 
 new Vue({
 	router: router,

--
Gitblit v1.8.0