import axios from 'axios';
|
import store from "../store";
|
import { getStore, setStore } from './store'
|
import routers from '@/router/index'
|
import { MessageBox,Message} from 'element-ui'
|
let base = process.env.NODE_ENV == 'development' ? '' : ''; // 基础url
|
|
axios.defaults.timeout = 30000;
|
|
axios.interceptors.request.use(config => {
|
let token = store.getters.token
|
if(token) {
|
config.headers['token'] = token
|
}
|
return config
|
},error => {
|
return Promise.reject(error)
|
})
|
|
axios.interceptors.response.use(config => {
|
// console.log(config,'config---config')
|
const status = Number(config.status)
|
const message = config.data.error
|
if( status !== 200) {
|
Message.error(message)
|
return Promise.reject(new Error(message))
|
}
|
return config
|
},(error) => {
|
// console.log(error,'error')
|
const { status, data } = error.response
|
const { error : message } = data
|
if(status === 503) {
|
Message.error(message)
|
}
|
return Promise.reject(error)
|
})
|
|
export const getRequest = (url, params = {}) => {
|
return axios({
|
method: 'get',
|
url: `${base}${url}`,
|
params: params,
|
// headers: {
|
// 'accessToken': accessToken
|
// }
|
}).then(function (response) {
|
return new Promise(function (resolve, reject) {
|
resolve(response.data)
|
});
|
});
|
};
|
|
export const postRequest = (url, params = {}) => {
|
return axios({
|
method: 'post',
|
url: `${base}${url}`,
|
data: params,
|
transformRequest: [function (data) {
|
let ret = '';
|
for (let it in data) {
|
ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&';
|
}
|
ret = ret.substring(0, ret.length - 1);
|
return ret;
|
}],
|
headers: {
|
'Content-Type': 'application/x-www-form-urlencoded',
|
}
|
}).then(function (response) {
|
return new Promise(function (resolve, reject) {
|
resolve(response.data)
|
});
|
});
|
};
|