|
@@ -1,9 +1,9 @@
|
|
|
-import axios from "axios"
|
|
|
-import store from "@/store"
|
|
|
-import { MessageBox } from "element-ui"
|
|
|
+import axios from "axios";
|
|
|
+import store from "@/store";
|
|
|
+import { MessageBox } from "element-ui";
|
|
|
|
|
|
-const CancelToken = axios.CancelToken
|
|
|
-let cancel
|
|
|
+const CancelToken = axios.CancelToken;
|
|
|
+let cancel;
|
|
|
|
|
|
// 创建axios实例
|
|
|
const axiosservice = axios.create({
|
|
@@ -13,31 +13,31 @@ const axiosservice = axios.create({
|
|
|
credentials: true, // 接口每次请求会跨域携带cookie
|
|
|
cancelToken: new CancelToken(function executor(c) {
|
|
|
// executor 函数接收一个 cancel 函数作为参数
|
|
|
- cancel = c
|
|
|
+ cancel = c;
|
|
|
}),
|
|
|
-})
|
|
|
+});
|
|
|
|
|
|
axiosservice.interceptors.request.use(
|
|
|
(config) => {
|
|
|
- config.withCredentials = true // 允许携带token ,这个是解决跨域产生的相关问题
|
|
|
+ config.withCredentials = true; // 允许携带token ,这个是解决跨域产生的相关问题
|
|
|
config.headers = {
|
|
|
- projectId: 'Pj1101050029',//项目id
|
|
|
+ projectId: store.state.projectId, // 'Pj1101050029',//项目id
|
|
|
// projectId: 'Pj4403070003',// 深圳龙岗万达广场
|
|
|
- }
|
|
|
- return config
|
|
|
+ };
|
|
|
+ return config;
|
|
|
},
|
|
|
(error) => {
|
|
|
- return Promise.reject(error)
|
|
|
+ return Promise.reject(error);
|
|
|
}
|
|
|
-)
|
|
|
+);
|
|
|
|
|
|
axiosservice.interceptors.response.use(
|
|
|
- function (res) {
|
|
|
+ function(res) {
|
|
|
//在这里对返回的数据进行处理
|
|
|
//console.log('axios interceptors res = ', res.status, res)
|
|
|
- const resp = res.data
|
|
|
+ const resp = res.data;
|
|
|
if (resp.result === "unauthc") {
|
|
|
- store.commit("logined", false)
|
|
|
+ store.commit("logined", false);
|
|
|
MessageBox.confirm("未登陆或登陆信息已失效, 是否重新登陆?", "提示", {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|
|
@@ -46,40 +46,40 @@ axiosservice.interceptors.response.use(
|
|
|
.then((resp) => {
|
|
|
//console.log('--------------------------- confirm', resp)
|
|
|
//router.push('/login')
|
|
|
- window.location.reload()
|
|
|
+ window.location.reload();
|
|
|
})
|
|
|
.catch((error) => {
|
|
|
//console.log('--------------------------- cancel', error)
|
|
|
- console.log("")
|
|
|
- })
|
|
|
+ console.log("");
|
|
|
+ });
|
|
|
} else if (resp.result == "unauthorization") {
|
|
|
- MessageBox.alert("无权操作", { title: "警告", type: "error" })
|
|
|
+ MessageBox.alert("无权操作", { title: "警告", type: "error" });
|
|
|
}
|
|
|
//console.log('axios interceptors resp2 = ', resp.success, resp.errorCode, resp.errorMessage, res)
|
|
|
- return res
|
|
|
+ return res;
|
|
|
},
|
|
|
- function (err) {
|
|
|
+ function(err) {
|
|
|
//Do something with response error
|
|
|
- console.log("axios interceptors err = ", err)
|
|
|
- return Promise.reject(err)
|
|
|
+ console.log("axios interceptors err = ", err);
|
|
|
+ return Promise.reject(err);
|
|
|
}
|
|
|
-)
|
|
|
+);
|
|
|
|
|
|
/* 下载方法 */
|
|
|
function downFile(blob, fileName) {
|
|
|
// 非IE下载
|
|
|
if ("download" in document.createElement("a")) {
|
|
|
- const link = document.createElement("a")
|
|
|
- link.href = window.URL.createObjectURL(blob) // 创建下载的链接
|
|
|
- link.download = fileName // 下载后文件名
|
|
|
- link.style.display = "none"
|
|
|
- document.body.appendChild(link)
|
|
|
- link.click() // 点击下载
|
|
|
- window.URL.revokeObjectURL(link.href) // 释放掉blob对象
|
|
|
- document.body.removeChild(link) // 下载完成移除元素
|
|
|
+ const link = document.createElement("a");
|
|
|
+ link.href = window.URL.createObjectURL(blob); // 创建下载的链接
|
|
|
+ link.download = fileName; // 下载后文件名
|
|
|
+ link.style.display = "none";
|
|
|
+ document.body.appendChild(link);
|
|
|
+ link.click(); // 点击下载
|
|
|
+ window.URL.revokeObjectURL(link.href); // 释放掉blob对象
|
|
|
+ document.body.removeChild(link); // 下载完成移除元素
|
|
|
} else {
|
|
|
// IE10+下载
|
|
|
- window.navigator.msSaveBlob(blob, fileName)
|
|
|
+ window.navigator.msSaveBlob(blob, fileName);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -87,12 +87,12 @@ export default {
|
|
|
//获取cookie
|
|
|
getCookie(name) {
|
|
|
let arr,
|
|
|
- reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)")
|
|
|
+ reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
|
|
|
if ((arr = document.cookie.match(reg))) {
|
|
|
- return unescape(arr[2])
|
|
|
+ return unescape(arr[2]);
|
|
|
} else {
|
|
|
/* 如果没有参数,那么就获取本域下的所有cookie */
|
|
|
- return document.cookie
|
|
|
+ return document.cookie;
|
|
|
}
|
|
|
},
|
|
|
|
|
@@ -102,10 +102,10 @@ export default {
|
|
|
url,
|
|
|
params,
|
|
|
method: "get",
|
|
|
- })
|
|
|
- return response.data
|
|
|
+ });
|
|
|
+ return response.data;
|
|
|
} catch (err) {
|
|
|
- throw err
|
|
|
+ throw err;
|
|
|
}
|
|
|
},
|
|
|
async postJson(url, data) {
|
|
@@ -114,10 +114,10 @@ export default {
|
|
|
url,
|
|
|
data,
|
|
|
method: "post",
|
|
|
- })
|
|
|
- return response.data
|
|
|
+ });
|
|
|
+ return response.data;
|
|
|
} catch (err) {
|
|
|
- throw err
|
|
|
+ throw err;
|
|
|
}
|
|
|
},
|
|
|
async fetchJson(url, params, data) {
|
|
@@ -127,10 +127,10 @@ export default {
|
|
|
params,
|
|
|
data,
|
|
|
method: "post",
|
|
|
- })
|
|
|
- return response
|
|
|
+ });
|
|
|
+ return response;
|
|
|
} catch (err) {
|
|
|
- throw err
|
|
|
+ throw err;
|
|
|
}
|
|
|
},
|
|
|
async postupload(url, data) {
|
|
@@ -142,10 +142,10 @@ export default {
|
|
|
headers: {
|
|
|
"Content-Type": "multipart/form-data",
|
|
|
},
|
|
|
- })
|
|
|
- return response.data
|
|
|
+ });
|
|
|
+ return response.data;
|
|
|
} catch (err) {
|
|
|
- throw err
|
|
|
+ throw err;
|
|
|
}
|
|
|
},
|
|
|
download(url, requestData) {
|
|
@@ -153,29 +153,29 @@ export default {
|
|
|
axiosservice
|
|
|
.post(url, requestData, { responseType: "blob" })
|
|
|
.then((resp) => {
|
|
|
- const headers = resp.headers
|
|
|
- const contentType = headers["content-type"]
|
|
|
+ const headers = resp.headers;
|
|
|
+ const contentType = headers["content-type"];
|
|
|
|
|
|
- console.log("响应头信息", headers)
|
|
|
+ console.log("响应头信息", headers);
|
|
|
if (!resp.data) {
|
|
|
- console.error("响应异常:", resp)
|
|
|
- return false
|
|
|
+ console.error("响应异常:", resp);
|
|
|
+ return false;
|
|
|
} else {
|
|
|
- console.log("下载文件:", resp)
|
|
|
- const blob = new Blob([resp.data], { type: contentType })
|
|
|
+ console.log("下载文件:", resp);
|
|
|
+ const blob = new Blob([resp.data], { type: contentType });
|
|
|
|
|
|
- const contentDisposition = resp.headers["content-disposition"]
|
|
|
- let fileName = "unknown"
|
|
|
+ const contentDisposition = resp.headers["content-disposition"];
|
|
|
+ let fileName = "unknown";
|
|
|
if (contentDisposition) {
|
|
|
- fileName = window.decodeURI(resp.headers["content-disposition"].split("=")[1])
|
|
|
+ fileName = window.decodeURI(resp.headers["content-disposition"].split("=")[1]);
|
|
|
}
|
|
|
- console.log("文件名称:", fileName)
|
|
|
- downFile(blob, fileName)
|
|
|
+ console.log("文件名称:", fileName);
|
|
|
+ downFile(blob, fileName);
|
|
|
}
|
|
|
})
|
|
|
- .catch(function (error) {
|
|
|
- console.log(error)
|
|
|
- })
|
|
|
+ .catch(function(error) {
|
|
|
+ console.log(error);
|
|
|
+ });
|
|
|
},
|
|
|
axios: axiosservice,
|
|
|
-}
|
|
|
+};
|