vue配置請求頭,設定請求攔截
項目中要求相容ie浏覽器,但是當使用Ie浏覽器的時候,會出現資料更新了,但是接口請求資料不重新整理的情況,如下關鍵代碼可以解決
if (config.method === 'get' || config.method === 'GET') {
config.params = {
_t: Date.parse(new Date()) / 1000,
...config.params
}
}
import axios from 'axios';
import { Message } from "element-ui";
//import { baseURL } from './const';
import tool from '../utils/tools'
// axios配置
const service = axios.create({
//baseURL,
timeout: 100000,
withCredentials: true,
headers: {
timeZone: tool.getTimezone()
}
});
// 添加請求攔截器
service.interceptors.request.use(config => {
// console.log(config);
//當使用Ie浏覽器的時候,可能會出現資料更新了,但是接口請求資料不重新整理的情況,加上下面這段代碼即可
if (config.method === 'get' || config.method === 'GET') {
config.params = {
_t: Date.parse(new Date()) / 1000,
...config.params
}
}
return config;
}, error => {
return Promise.reject(error);
})
// 添加響應攔截器
service.interceptors.response.use(response => {
// console.log(response);
const res = response.data;
if (res.code !== 0) {
if (res.code === 100 || res.code === 1007) {
window.location.href = "" + "/";
return res;
}else if(res.code == 9999){
Message.closeAll();
Message.error(res.msg);
return res;
}else {
Message.closeAll();
Message.error(res.msg);
return res;
}
return Promise.reject(res.message);
} else {
console.log(res)
return res;
}
}, error => {
Message.error(error, 2.5);
return Promise.reject(error);
})
export default service;
參考:https://blog.csdn.net/h5_since/article/details/108092294