如何用promise封装axios请求
时间: 2023-06-14 16:05:42 浏览: 105
可以使用以下代码将axios请求封装成Promise:
```javascript
function axiosPromise(config) {
return new Promise((resolve, reject) => {
axios(config)
.then((response) => {
resolve(response.data);
})
.catch((error) => {
reject(error);
});
});
}
```
其中,`config`参数为axios请求的配置项,可以包含如下属性:
- `url`:请求的URL地址
- `method`:请求的HTTP方法,如GET、POST等
- `params`:GET请求的参数
- `data`:POST请求的参数
- `headers`:请求头部信息
使用方法示例如下:
```javascript
axiosPromise({
url: 'https://jsonplaceholder.typicode.com/todos/1',
method: 'get'
}).then((data) => {
console.log(data);
}).catch((error) => {
console.error(error);
});
```
其中,`axiosPromise`函数返回的是一个Promise对象,可以使用`.then()`和`.catch()`方法分别处理请求成功和请求失败的情况。当请求成功时,`then`方法会接收到服务端返回的数据;当请求失败时,`catch`方法会接收到错误信息。
阅读全文