Автор оригинала: David Wong.
импорт axios из “axios”; импорт QS из “qs”;
//Переключение среды//если (process.env.NODE_ENV) {//;//} иначе, если (process.env.NODE_ENV) {//;//}
//Переключение среды//если (process.env.NODE_ENV) {//;//} иначе, если (process.env.NODE_ENV) {//;//} ;//Перехватчик HTTP-запросов axios.interceptors.request.use( конфигурация => {
config.headers = {
'Content-Type':'application/x-www-form-urlencoded'
}
return config;}, ошибка => {
return Promise.reject(error);
} );
//Перехватчик ответов-это обработка исключений axios.interceptors.response.use( ответ => {
if (response.status === 200) {
return Promise.resolve(response);
} else {
return Promise.reject(response);
}}, ошибка => {
if (err && err.response) {
switch (err.response.status) {
case 400:
console.log ('bad request ')
break;
case 403:
console.log ('Access denied ')
break;
case 404:
console.log ('request error, resource not found ')
break;
case 500:
console.log ('server side error ')
break;
case 501:
console.log ('network not implemented ')
break;
case 502:
console.log ('network error ')
break;
default:
console.log (` connection error${ err.response.status >)
}
} else {
console.log ('connection to server failed ')
}
return Promise.resolve(err.response)})
экспорт по умолчанию {
get(url, params){
return new Promise((resolve, reject) => {
axios.get(url,{
params:params
}).then(res => {
resolve(res.data);
}).catch(err =>{
reject(err.data);
})
})
},
post(url, params) {
return new Promise((resolve, reject) => {
axios.post(url, QS.stringify(params))
.then(res => {
resolve(res.data);
})
.catch(err =>{
reject(err.data)
})
});
}};
Оригинал: “https://developpaper.com/vue-axios-secondary-packaging/”