|
@@ -1,61 +1,63 @@
|
|
-import axios from 'axios'
|
|
|
|
-import { Message } from 'element-ui'
|
|
|
|
-import store from '@/store'
|
|
|
|
-import { getToken } from '@/utils/auth'
|
|
|
|
|
|
+import axios from "axios";
|
|
|
|
+import { Message } from "element-ui";
|
|
|
|
+import store from "@/store";
|
|
|
|
+import { getToken } from "@/utils/auth";
|
|
|
|
|
|
// create an axios instance
|
|
// create an axios instance
|
|
//
|
|
//
|
|
// console.log(process.env.VUE_APP_BASE_API)
|
|
// console.log(process.env.VUE_APP_BASE_API)
|
|
const service = axios.create({
|
|
const service = axios.create({
|
|
- baseURL: '', // url = base url + request url
|
|
|
|
|
|
+ baseURL: "", // url = base url + request url
|
|
// withCredentials: true, // send cookies when cross-domain requests
|
|
// withCredentials: true, // send cookies when cross-domain requests
|
|
- timeout: 10000 // request timeout
|
|
|
|
-})
|
|
|
|
|
|
+ timeout: 10000, // request timeout
|
|
|
|
+});
|
|
|
|
|
|
// request interceptor
|
|
// request interceptor
|
|
service.interceptors.request.use(
|
|
service.interceptors.request.use(
|
|
- config => {
|
|
|
|
|
|
+ (config) => {
|
|
// do something before request is sent
|
|
// do something before request is sent
|
|
|
|
|
|
if (store.getters.token) {
|
|
if (store.getters.token) {
|
|
// let each request carry token
|
|
// let each request carry token
|
|
// ['X-Token'] is a custom headers key
|
|
// ['X-Token'] is a custom headers key
|
|
// please modify it according to the actual situation
|
|
// please modify it according to the actual situation
|
|
- const token = getToken()
|
|
|
|
|
|
+ const token = getToken();
|
|
// 为了处理两端登录问题
|
|
// 为了处理两端登录问题
|
|
- config.headers['Authorization'] = token.charAt(0).toUpperCase() + token.slice(1)
|
|
|
|
|
|
+ config.headers["Authorization"] =
|
|
|
|
+ token.charAt(0).toUpperCase() + token.slice(1);
|
|
}
|
|
}
|
|
- return config
|
|
|
|
|
|
+ return config;
|
|
},
|
|
},
|
|
- error => {
|
|
|
|
|
|
+ (error) => {
|
|
// do something with request error
|
|
// do something with request error
|
|
- return Promise.reject(error)
|
|
|
|
|
|
+ return Promise.reject(error);
|
|
}
|
|
}
|
|
-)
|
|
|
|
|
|
+);
|
|
|
|
|
|
// response interceptor
|
|
// response interceptor
|
|
service.interceptors.response.use(
|
|
service.interceptors.response.use(
|
|
/**
|
|
/**
|
|
* If you want to get http information such as headers or status
|
|
* If you want to get http information such as headers or status
|
|
* Please return response => response
|
|
* Please return response => response
|
|
- */
|
|
|
|
|
|
+ */
|
|
|
|
|
|
/**
|
|
/**
|
|
* Determine the request status by custom code
|
|
* Determine the request status by custom code
|
|
* Here is just an example
|
|
* Here is just an example
|
|
* You can also judge the status by HTTP Status Code
|
|
* You can also judge the status by HTTP Status Code
|
|
*/
|
|
*/
|
|
- response => {
|
|
|
|
- const code = response.data.code
|
|
|
|
|
|
+ (response) => {
|
|
|
|
+ const code = response.data.code;
|
|
if (code === 401 || code == 403) {
|
|
if (code === 401 || code == 403) {
|
|
- store.dispatch('user/resetToken')
|
|
|
|
- if (location.href.indexOf('login') !== -1) {
|
|
|
|
- location.reload() // 为了重新实例化vue-router对象 避免bug
|
|
|
|
|
|
+ store.dispatch("user/resetToken");
|
|
|
|
+ localStorage.removeItem("create-ticket-form-data");
|
|
|
|
+ if (location.href.indexOf("login") !== -1) {
|
|
|
|
+ location.reload(); // 为了重新实例化vue-router对象 避免bug
|
|
} else {
|
|
} else {
|
|
- Message.error('登录状态已过期,请重新登录')
|
|
|
|
|
|
+ Message.error("登录状态已过期,请重新登录");
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
- location.reload() // 为了重新实例化vue-router对象 避免bug
|
|
|
|
- }, 1500)
|
|
|
|
|
|
+ location.reload(); // 为了重新实例化vue-router对象 避免bug
|
|
|
|
+ }, 1500);
|
|
// MessageBox.confirm(
|
|
// MessageBox.confirm(
|
|
// '登录状态已过期,您可以继续留在该页面,或者重新登录',
|
|
// '登录状态已过期,您可以继续留在该页面,或者重新登录',
|
|
// '系统提示',
|
|
// '系统提示',
|
|
@@ -69,11 +71,12 @@ service.interceptors.response.use(
|
|
// })
|
|
// })
|
|
}
|
|
}
|
|
} else if (code === 6401) {
|
|
} else if (code === 6401) {
|
|
- store.dispatch('user/resetToken')
|
|
|
|
- Message.error('登录状态已过期,请重新登录')
|
|
|
|
|
|
+ store.dispatch("user/resetToken");
|
|
|
|
+ localStorage.removeItem("create-ticket-form-data");
|
|
|
|
+ Message.error("登录状态已过期,请重新登录");
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
- location.reload() // 为了重新实例化vue-router对象 避免bug
|
|
|
|
- }, 1500)
|
|
|
|
|
|
+ location.reload(); // 为了重新实例化vue-router对象 避免bug
|
|
|
|
+ }, 1500);
|
|
// MessageBox.confirm(
|
|
// MessageBox.confirm(
|
|
// '登录状态已过期,您可以继续留在该页面,或者重新登录',
|
|
// '登录状态已过期,您可以继续留在该页面,或者重新登录',
|
|
// '系统提示',
|
|
// '系统提示',
|
|
@@ -85,36 +88,36 @@ service.interceptors.response.use(
|
|
// ).then(() => {
|
|
// ).then(() => {
|
|
// location.reload() // 为了重新实例化vue-router对象 避免bug
|
|
// location.reload() // 为了重新实例化vue-router对象 避免bug
|
|
// })
|
|
// })
|
|
- return false
|
|
|
|
|
|
+ return false;
|
|
} else if (code === 400 || code !== 200) {
|
|
} else if (code === 400 || code !== 200) {
|
|
Message({
|
|
Message({
|
|
message: response.data.msg,
|
|
message: response.data.msg,
|
|
- type: 'error',
|
|
|
|
- duration: 5 * 1000
|
|
|
|
- })
|
|
|
|
- return Promise.reject('error')
|
|
|
|
|
|
+ type: "error",
|
|
|
|
+ duration: 5 * 1000,
|
|
|
|
+ });
|
|
|
|
+ return Promise.reject("error");
|
|
} else {
|
|
} else {
|
|
- return response.data
|
|
|
|
|
|
+ return response.data;
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- error => {
|
|
|
|
- if (error.message === 'Network Error') {
|
|
|
|
|
|
+ (error) => {
|
|
|
|
+ if (error.message === "Network Error") {
|
|
Message({
|
|
Message({
|
|
- message: '服务器连接异常,请检查服务器!',
|
|
|
|
- type: 'error',
|
|
|
|
- duration: 5 * 1000
|
|
|
|
- })
|
|
|
|
- return
|
|
|
|
|
|
+ message: "服务器连接异常,请检查服务器!",
|
|
|
|
+ type: "error",
|
|
|
|
+ duration: 5 * 1000,
|
|
|
|
+ });
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
Message({
|
|
Message({
|
|
message: error.message,
|
|
message: error.message,
|
|
- type: 'error',
|
|
|
|
- duration: 5 * 1000
|
|
|
|
- })
|
|
|
|
|
|
+ type: "error",
|
|
|
|
+ duration: 5 * 1000,
|
|
|
|
+ });
|
|
|
|
|
|
- return Promise.reject(error)
|
|
|
|
|
|
+ return Promise.reject(error);
|
|
}
|
|
}
|
|
-)
|
|
|
|
|
|
+);
|
|
|
|
|
|
-export default service
|
|
|
|
|
|
+export default service;
|