vue3项目实战中的接口调用方法async/await用法 对axios二次封装 实现异步请求
import axios from 'axios';
// 创建axios实例
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API, // api的base_url
timeout: 5000 // 请求超时时间
});
// 请求拦截器
service.interceptors.request.use(
config => {
// 可以在这里添加请求头等信息
return config;
},
error => {
// 请求错误处理
console.log(error); // for debug
Promise.reject(error);
}
);
// 响应拦截器
service.interceptors.response.use(
response => {
// 可以在这里对响应数据进行处理
return response.data;
},
error => {
// 响应错误处理
console.log('err' + error); // for debug
return Promise.reject(error);
}
);
// 导出axios实例
export default service;
在上述代码中,我们首先导入了axios,并创建了一个axios实例。然后,我们为这个实例添加了请求拦截器和响应拦截器,以便在发送请求和接收响应时进行一些处理。最后,我们导出了axios实例,以便在项目中其他地方使用。这样的封装使得我们可以在一个地方集中处理所有的HTTP请求,并且可以方便地添加、修改或移除请求拦截器和响应拦截器中的逻辑。
评论已关闭