axios post方法的封装
时间: 2023-07-19 07:10:12 浏览: 113
好的,以下是一个简单的axios post方法的封装示例:
```javascript
import axios from 'axios';
const post = (url, data) => {
return axios({
method: 'post',
url: url,
data: data,
headers: {
'Content-Type': 'application/json'
}
}).then(response => {
return response.data;
}).catch(error => {
console.error(error);
throw error;
});
};
export default post;
```
其中,url是post请求的地址,data是要发送的数据。在这个封装中,我们设置了post请求的content-type为application/json,然后使用axios发送post请求,并在返回数据时提取response的data字段,最后在请求出错时输出错误信息并抛出异常。
相关问题
axios post 封装
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),返回响应的数据;如果有错误,捕获并处理异常。
axios post封装对象
axios的post请求封装对象可以通过以下方式实现:
```javascript
import axios from 'axios';
const request = axios.create({
baseURL: 'http://127.0.0.1:8800' // 设置请求的根路径
});
export const post = (url, params) => {
return new Promise((resolve, reject) => {
request.post(url, params)
.then(res => {
resolve(res.data);
})
.catch(err => {
reject(err.data);
});
});
};
```
在这个例子中,我们首先通过`axios.create()`函数创建了一个axios的实例对象,命名为`request`,并指定了请求的根路径为`http://127.0.0.1:8800`。然后,我们定义了一个名为`post`的函数,该函数接受两个参数:`url`和`params`。在函数内部,我们使用`request.post()`方法发送post请求,并将结果通过Promise进行处理,最后返回一个Promise对象。这样,我们就可以在其他地方引入`post`函数,并使用它来发送post请求了。
阅读全文
相关推荐














