import axios from 'axios';
import { getCookie } from '../api/cookies'
import {getQueryString} from '../api/unit'
const instance = axios.create({
timeout: 5000,
baseURL:'',
withCredentials: true,
headers: {token: getCookie('token')}
});
//http response 拦截器
instance.interceptors.response.use(
response => {
var res=response.data;
if (res.code == 'A0301' || res.code == 'A0311') {
// 拦截 对应特殊错误特别处理
} else {
return response;
}
},
error => {
console.log("response error :" + error);
if (error.response) {
switch (error.response.status) {// token失效处理
case 401://token 失效
return;
}
}
return Promise.reject(error) // 返回接口返回的错误信息
}
);
/**
* 封装get方法
* @param url
* @param data
* @returns {Promise}
*/
export function get(url,params={}){
return new Promise((resolve,reject) => {
instance.get(url,{
params:params
}).then(res => {
resolve(res.data);
}).catch(err =>{
reject(err.data)
})
})
}
/**
* 封装post请求
* @param url
* @param data
* @returns {Promise}
*/
export function post(url,data = {}){
return new Promise((resolve,reject) => {
instance.post(url,data).then(res => {
resolve(res.data);
}).catch(err =>{
reject(err.data)
})
})
}
/**
* 封装patch请求
* @param url
* @param data
* @returns {Promise}
*/
export function patch(url,data = {}){
return new Promise((resolve,reject) => {
instance.patch(url,data).then(res => {
resolve(res.data);
}).catch(err =>{
reject(err.data)
})
})
}
/**
* 封装put请求
* @param url
* @param data
* @returns {Promise}
*/
export function put(url,data = {}) {
return new Promise((resolve, reject) => {
instance.put(url, data).then(res => {
resolve(res.data);
}).catch(err =>{
reject(err.data)
})
})
}
0条评论