axios的多次分装
时间: 2023-11-08 12:02:45 浏览: 38
对于axios的多次封装,一般是为了简化复杂的请求操作,提高代码的复用性和可维护性。比如可以将一些通用配置项提取出来,形成一个公共的axios实例,以便在多个地方都可以使用。同时也可以为不同的业务场景创建不同的axios实例,并对其进行针对性的配置,以达到最佳的网络请求效果。
下面是一个示例,演示如何进行axios的多次封装:
```
import axios from 'axios'
// 创建一个公共的axios实例
const instance = axios.create({
baseURL: 'https://api.example.com',
timeout: 5000,
headers: {'X-Custom-Header': 'foobar'}
})
// 封装一个get请求方法
export const get = (url, params) => {
return instance.get(url, {params})
}
// 封装一个post请求方法
export const post = (url, data) => {
return instance.post(url, data)
}
// 创建一个特定业务场景的axios实例
const bizInstance = axios.create({
baseURL: 'https://biz.example.com',
timeout: 5000,
headers: {'X-Custom-Header': 'biz'}
})
// 封装一个特定业务场景的get请求方法
export const bizGet = (url, params) => {
return bizInstance.get(url, {params})
}
// 封装一个特定业务场景的post请求方法
export const bizPost = (url, data) => {
return bizInstance.post(url, data)
}
```
这样,我们就可以在不同的地方引入封装好的请求方法,从而进行网络请求,并且由于进行了多次封装,请求代码变得简洁易懂,同时也可以根据业务的需求进行不同的配置。