From b4048fbe80dba8e7756ae557a15ab60b4f80a44b Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 04 四月 2023 09:09:07 +0800
Subject: [PATCH] 合并开源主线

---
 web_src/src/main.js |   38 ++++++++++++++++++++++++++++----------
 1 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/web_src/src/main.js b/web_src/src/main.js
index e800718..a6c6e1b 100644
--- a/web_src/src/main.js
+++ b/web_src/src/main.js
@@ -1,5 +1,6 @@
 import Vue from 'vue';
 import App from './App.vue';
+
 Vue.config.productionTip = false;
 import ElementUI from 'element-ui';
 import 'element-ui/lib/theme-chalk/index.css';
@@ -10,15 +11,16 @@
 import VCharts from 'v-charts';
 
 import VueClipboard from 'vue-clipboard2';
-import { Notification } from 'element-ui';
+import {Notification} from 'element-ui';
 import Fingerprint2 from 'fingerprintjs2';
 import VueClipboards from 'vue-clipboards';
 import Contextmenu from "vue-contextmenujs"
+import userService from "./components/service/UserService"
 
 
 // 鐢熸垚鍞竴ID
-Fingerprint2.get(function(components) {
-  const values = components.map(function(component,index) {
+Fingerprint2.get(function (components) {
+  const values = components.map(function (component, index) {
     if (index === 0) { //鎶婂井淇℃祻瑙堝櫒閲孶A鐨剋ifi鎴�4G绛夌綉缁滄浛鎹㈡垚绌�,涓嶇劧鍒囨崲缃戠粶浼欼D涓嶄竴鏍�
       return component.value.replace(/\bNetType\/\w+\b/, '');
     }
@@ -37,18 +39,22 @@
 Vue.use(ElementUI);
 Vue.use(VueCookies);
 Vue.use(VueClipboards);
-Vue.prototype.$axios = axios;
+
 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) {
+axios.interceptors.response.use((response) => {
   // 瀵瑰搷搴旀暟鎹仛鐐逛粈涔�
+  let token = response.headers["access-token"];
+  if (token) {
+    userService.setToken(token)
+  }
   return response;
-}, function (error) {
+}, (error) => {
   // 瀵瑰搷搴旈敊璇仛鐐逛粈涔�
   if (error.response.status === 401) {
     console.log("Received 401 Response")
@@ -56,10 +62,22 @@
   }
   return Promise.reject(error);
 });
+axios.interceptors.request.use(
+  config => {
+    if (userService.getToken() != null && config.url !== "/api/user/login") {
+      config.headers['access-token'] = `${userService.getToken()}`;
+    }
+    return config;
+  },
+  error => {
+    return Promise.reject(error);
+  }
+);
 
+Vue.prototype.$axios = axios;
 Vue.prototype.$cookies.config(60*30);
 
 new Vue({
-	router: router,
-	render: h => h(App),
+  router: router,
+  render: h => h(App),
 }).$mount('#app')

--
Gitblit v1.8.0