对axios的二次封装的代码示例
时间: 2023-11-01 13:51:28 浏览: 72
vue axios 二次封装的示例代码
当然可以!以下是一个axios的二次封装的代码示例:
```javascript
import axios from 'axios';
// 创建一个axios实例
const instance = axios.create({
baseURL: 'https://api.example.com', // 设置基本的请求URL
timeout: 5000, // 设置请求超时时间
});
// 请求拦截器
instance.interceptors.request.use(
config => {
// 在这里可以对请求进行一些处理,比如添加token等
// config.headers['Authorization'] = getToken();
return config;
},
error => {
// 处理请求错误
return Promise.reject(error);
}
);
// 响应拦截器
instance.interceptors.response.use(
response => {
// 在这里可以对响应进行一些处理,比如处理错误码等
return response.data;
},
error => {
// 处理响应错误
return Promise.reject(error);
}
);
export default instance;
```
使用时可以直接引入这个封装好的axios实例,然后像使用普通的axios一样发起请求,例如:
```javascript
import axios from './axiosInstance';
axios.get('/users')
.then(response => {
console.log(response);
})
.catch(error => {
console.error(error);
});
```
这样就可以对axios进行二次封装,实现统一的请求处理逻辑,提高代码复用性和可维护性。当然,你可以根据自己的需求对封装的代码进行修改和扩展。希望对你有帮助!如有任何问题,请随时提问。
阅读全文