创建文件axios.ts
import axios from "axios";
import Config from "./config";
const instance = axios.create({
baseURL: Config.baseURL,
headers:{
'Content-Type':'application/json'
}
});
/**
* 请求发出前拦击器
*
*/
instance.interceptors.request.use(
function (configs) {
console.log(configs);
return configs;
},
function (err) {
return Promise.reject(err);
}
);
/**
* 请求回来之前拦截器
*/
instance.interceptors.response.use(
function (respose) {
console.log(respose);
return respose;
},
function (err) {
return Promise.reject(err);
}
);
const myAxios = {
/**
* 自定义myAxios --> get 方法
* @param api 访问地址
* @param params 参数 如:{a:1,b:2}
* @returns
*/
get:function(api:string,params?:object){
return new Promise((resolve,reject)=>{
instance.get(api,{
params:params
}).then(res=>{
resolve(res)
}).catch(err=>{
reject(err)
})
})
},
/**
* 自定义 myAxios -->post 方法
* @param api 访问地址
* @param params 参数 如 :{a:1,b:2}
* @returns
*/
post:function(api:string,params?:object){
return new Promise((resolve,reject)=>{
instance.post(api,params).then(res=>{
resolve(res)
}).catch(err=>{
reject(err)
})
})
}
}
export default myAxios;
创建文件config.ts
const Config = {
baseURL:'',
}
export default Config;
创建文件api.ts
import myAxios from "./axios"
const Api = {
login:(data?:object)=>myAxios.get('',data),
}
export default Api;
调用
Api.login().then(res=>{
console.log(res)
})