import axios from "axios";
import Vue from "vue";
axios.defaults.headers["Content-type"] = "application/json";
let HUBservice = axios.create({
baseURL: process.env.VUE_APP_HUB,
timeout: 50000
});
let service = axios.create({
baseURL: process.env.VUE_APP_URL,
timeout: 50000
});
const error = err => {
if (err.response) {
switch (err.response.status) {
case 500:
break;
case 403:
break;
case 60006:
break;
case 401:
window.localStorage.removeItem("UM_accessToken");
break;
}
}
return Promise.reject(err);
};
service.interceptors.request.use(config => {
config.headers["Content-type"] = "application/json";
if (window.localStorage.getItem("UM_accessToken")) {
config.headers["accessToken"] = window.localStorage.getItem("UM_accessToken");
}
return config;
}, error);
HUBservice.interceptors.response.use(res => {
if (res.data.code == 0 || res.data.code == -1 || res.data.code == 401 || res.data.code == 500 || res.data.code == 6001) {
Vue.prototype.$notify.error({
title: '错误',
message: res.data.msg
})
return res;
} else {
return res;
}
}, error);
service.interceptors.response.use(res => {
if (res.data.code == 0 || res.data.code == -1 || res.data.code == 401 || res.data.code == 500) {
Vue.prototype.$notify.error({
title: '错误',
message: res.data.msg
})
return res;
} else if (res.data.code == 5004) {
window.localStorage.removeItem("UM_accessToken");
window.localStorage.removeItem("UM_USER_IDENTITY");
Vue.prototype.$notify.error({
title: '错误',
message: res.data.msg
})
setTimeout(() => {
location.href = "/login";
return
}, 2000);
return res;
} else {
return res;
}
}, error);
export function get(url, params) {
if (params) {
Object.keys(params).forEach(key => {
if (Array.isArray(params[key])) {
params[key] = params[key].toString();
}
});
}
return new Promise((resolve, reject) => {
service
.get(url, {
params: params
})
.then(res => {
resolve(res.data);
})
.catch(err => {
reject(err.data);
});
});
}
export function post(url, params) {
return new Promise((resolve, reject) => {
service
.post(url, params)
.then(res => {
resolve(res.data);
})
.catch(err => {
reject(err.data);
});
});
}
export function HUBget(url, params) {
if (params) {
Object.keys(params).forEach(key => {
if (Array.isArray(params[key])) {
params[key] = params[key].toString();
}
});
}
return new Promise((resolve, reject) => {
HUBservice
.get(url, {
params: params
})
.then(res => {
resolve(res.data);
})
.catch(err => {
reject(err.data);
});
});
}
export function HUBpost(url, params) {
return new Promise((resolve, reject) => {
HUBservice
.post(url, params)
.then(res => {
resolve(res.data);
})
.catch(err => {
reject(err.data);
});
});
}