axios二次封装思路
时间: 2023-11-14 14:09:33 浏览: 111
axios的ts二次封装+调用
axios是一个非常流行的前端HTTP请求库,它可以用于发送各种类型的请求,包括GET、POST等。二次封装axios的主要目的是为了方便我们在项目中使用,可以将一些通用的配置和处理逻辑封装起来,减少重复代码的编写。
下面是一个简单的axios二次封装的示例:
```javascript
import axios from 'axios'
const instance = axios.create({
baseURL: 'https://api.example.com',
timeout: 5000,
headers: {
'Content-Type': 'application/json'
}
})
instance.interceptors.request.use(config => {
// 在请求发送之前做一些处理
return config
}, error => {
// 处理请求错误
return Promise.reject(error)
})
instance.interceptors.response.use(response => {
// 在响应之前做一些处理
return response.data
}, error => {
// 处理响应错误
return Promise.reject(error)
})
export default instance
```
在这个示例中,我们使用axios.create方法创建了一个axios实例,并设置了一些通用的配置,例如baseURL、timeout和headers。然后,我们使用instance.interceptors.request和instance.interceptors.response方法分别添加了请求拦截器和响应拦截器,用于在请求发送之前和响应返回之后做一些处理。
在实际项目中,我们可以根据需要对这个示例进行修改和扩展,例如添加统一的错误处理、添加请求头信息等。
阅读全文