import axios, {AxiosInstance, AxiosError, AxiosResponse, AxiosRequestConfig} from 'axios';
const service:AxiosInstance = axios.create({
baseURL:'1213', //接口基本地址
timeout: 5000 //超时时间
});
//请求拦截器
service.interceptors.request.use(
(config: AxiosRequestConfig) => {
return config;
},
(error: AxiosError) => {
console.log(error);
return Promise.reject();
}
);
//响应拦截器
service.interceptors.response.use(
(response: AxiosResponse) => {
if (response.status === 200) {
return response;
} else {
Promise.reject();
}
},
(error: AxiosError) => {
console.log(error);
return Promise.reject();
}
);
export default service;
使用方法
function getSomthing(){
return service({
url:'/api/api1/api2'
})
}
测试接口函数
getsomething().then(
res=>{
console.log(res.data)
}
)
如果有多个不同的接口地址呢?
//声明多个create实例
const service:AxiosInstance = axios.create({
baseURL:'1213', //接口基本地址
timeout: 5000 //超时时间
});
const service1:AxiosInstance = axios.create({
baseURL:'12124', //接口基本地址
timeout: 5000 //超时时间
});