axios post 封装
时间: 2024-09-24 10:21:33 浏览: 35
Axios是一个流行的基于Promise的HTTP客户端库,适用于浏览器和Node.js环境。封装axios的post请求通常是为了简化发送数据到服务器的过程,并提供统一的接口。以下是一个简单的axios.post封装示例:
```javascript
// 引入axios库
import axios from 'axios';
const service = axios.create({
baseURL: process.env.BASE_API, // API的基础URL
timeout: 5000, // 请求超时时间(单位ms)
headers: {'Content-Type': 'application/json'}, // 默认请求头
});
export const post = (url, data) => {
return service.post(url, data, { validateStatus: 200 })
.then(response => response.data)
.catch(error => {
if (error.response) {
// 请求已发出,但服务器响应的状态码不在2xx范围内
console.error('Error', error.response.status, error.response.statusText);
} else {
// 发送请求的过程中发生错误
console.error('Error', error.message);
}
throw error;
});
};
```
在这个例子中,我们创建了一个名为`post`的方法,它接受URL和数据作为参数,然后通过axios.post发起POST请求。如果请求成功(状态码200),返回响应的数据;如果有错误,捕获并处理异常。
阅读全文