axios封装使用案例
时间: 2023-11-04 15:57:11 浏览: 146
引用: 在实际工作项目中,使用axios进行请求时,可能需要访问多个服务地址,而这些服务请求和响应的结构也可能都完全不同。为了更好地处理这种情况,我们可以通过axios.create()方法创建不同的实例来进行处理。创建实例的好处是可以单独为不同的实例配置拦截器、超时时间、请求头等。比如,可以为axios1配置某种拦截器,而为axios2配置另一种拦截器,以满足不同的需求。
引用: 创建axios实例时,可以传入一个配置对象来对实例进行配置,如果不传入配置对象,则默认使用全局的配置。如果创建了实例,但又想修改实例的某些配置,可以直接通过实例对象进行修改。需要注意的是,axios请求配置的优先级是axios请求配置 > axios实例配置 > axios全局配置。
针对axios实例的使用,可以使用实例的get、post、post_json等方法来发送请求。这些方法的使用方式与全局的axios.get、axios.post等方法类似,只是需要通过实例对象来调用。具体使用案例可以参考以下代码:
```
// 创建axios实例
const instance = axios.create({
baseURL: 'http://api.example.com', // 设置请求的基础URL
timeout: 5000, // 设置超时时间为5秒
headers: {
'Content-Type': 'application/json' // 设置请求头的Content-Type为JSON
}
});
// 发送GET请求
instance.get('/users')
.then(res => {
console.log(res.data);
})
.catch(error => {
console.error(error);
});
// 发送POST请求
instance.post('/users', {
name: 'John',
age: 25
})
.then(res => {
console.log(res.data);
})
.catch(error => {
console.error(error);
});
```
以上示例展示了如何创建axios实例,并使用实例的get和post方法发送请求。你可以根据自己的需求配置实例,
阅读全文