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