react封装axios
时间: 2023-11-01 07:00:37 浏览: 151
下面是一个简单的封装axios的示例:
```
import axios from 'axios';
// 创建axios实例
const instance = axios.create({
baseURL: 'https://api.example.com',
timeout: 5000
});
// request拦截器
instance.interceptors.request.use(
config => {
// 在发送请求前做些什么
return config;
},
error => {
// 处理请求错误
return Promise.reject(error);
}
);
// response拦截器
instance.interceptors.response.use(
response => {
// 在接收响应后做些什么
return response.data;
},
error => {
// 处理响应错误
return Promise.reject(error);
}
);
export default instance;
```
在上面的示例中,我们首先创建了一个axios实例。然后,我们使用拦截器对请求和响应做了一些处理。
在请求拦截器中,我们可以在发送请求前做一些操作,例如添加请求头、添加loading动画等。
在响应拦截器中,我们可以在接收到响应后做一些操作,例如对返回数据进行格式化、统一处理错误等。
最后,我们将创建的axios实例导出,供其他模块使用。在其他模块中,只需要引入这个封装好的axios实例,即可使用它进行网络请求。
阅读全文