通过axios封装一个网络请求工具
时间: 2024-05-29 13:05:22 浏览: 105
以下是通过axios封装一个网络请求工具的示例代码:
```javascript
import axios from 'axios';
const request = axios.create({
baseURL: 'https://api.example.com', // 设置基础URL
timeout: 5000, // 设置请求超时时间
});
// 封装GET请求
export function get(url, params) {
return request.get(url, { params });
}
// 封装POST请求
export function post(url, data) {
return request.post(url, data);
}
// 封装PUT请求
export function put(url, data) {
return request.put(url, data);
}
// 封装DELETE请求
export function del(url) {
return request.delete(url);
}
```
使用上述代码,你可以通过调用`get`、`post`、`put`和`del`函数来发送相应的请求。这个工具可以帮助你更方便地进行网络请求,并且可以在需要的时候统一配置基础URL和超时时间。
相关问题
基于axios封装的请求工具
基于axios封装的请求工具是mini-axios。它是一个完全使用Promise并提供了请求和响应的拦截器的微信小程序请求工具。你可以通过以下步骤来引入mini-axios到你的项目中:
1. 第一步,使用命令`npm i mini-axios`来安装mini-axios。
2. 第二步,在你的代码中引入mini-axios,可以使用`import axios from 'mini-axios'`。
3. 第三步,根据需要按需引入指定的请求方法。你可以使用类似以下代码的方式来调用请求方法:
```javascript
let params = { param1: "xxx", param2: "xxxx" };
getRequest("/api/testuri", params)
.then(ret => {
let data = ret.data;
alert("ret: " + JSON.stringify(ret));
})
.catch(err => {
alert("err: " + JSON.stringify(err));
});
```
在上述代码中,`getRequest`是一个由mini-axios提供的请求方法,可以用来发送GET请求。你可以根据需要使用其他的请求方法,如POST、PUT等。
对axios封装一个工具类
好的,可以为您封装一个简单的axios工具类。以下是一个示例:
```javascript
import axios from 'axios';
class AxiosUtil {
constructor() {
this.instance = axios.create({
baseURL: 'https://api.example.com', // 设置基本URL
timeout: 5000, // 设置超时时间
headers: {
'Content-Type': 'application/json', // 设置请求头
},
});
}
// 发送GET请求
get(url, params = {}) {
return this.instance.get(url, { params });
}
// 发送POST请求
post(url, data = {}) {
return this.instance.post(url, data);
}
// 发送PUT请求
put(url, data = {}) {
return this.instance.put(url, data);
}
// 发送DELETE请求
delete(url) {
return this.instance.delete(url);
}
}
export default new AxiosUtil();
```
使用示例:
```javascript
import AxiosUtil from './AxiosUtil';
AxiosUtil.get('/users')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
```
这个工具类使用axios库创建了一个实例,可以设置基本的URL、超时时间和请求头。封装了GET、POST、PUT和DELETE方法,方便发送对应的请求。您可以根据自己的需求进行修改和扩展。
阅读全文