使用axios封装http
时间: 2023-11-29 08:35:43 浏览: 38
好的,你可以使用 axios 库来封装 HTTP 请求。首先,确保你已经在项目中安装了 axios,可以使用 npm 或者 yarn 进行安装。然后,你可以创建一个名为 http.js(或者其他你喜欢的名字)的文件,在该文件中编写封装的代码。
以下是一个简单的示例:
```javascript
import axios from 'axios';
const http = axios.create({
baseURL: 'https://api.example.com', // 设置基础 URL
timeout: 5000, // 设置请求超时时间
});
// 添加请求拦截器
http.interceptors.request.use(
config => {
// 在请求发送之前做一些处理,比如添加请求头等
return config;
},
error => {
// 处理请求错误
return Promise.reject(error);
}
);
// 添加响应拦截器
http.interceptors.response.use(
response => {
// 对响应数据做一些处理,比如解析数据等
return response.data;
},
error => {
// 处理响应错误
return Promise.reject(error);
}
);
export default http;
```
在上面的示例中,我们使用 `axios.create` 方法创建了一个实例,并设置了 baseURL 和 timeout 等配置项。然后,我们使用 `interceptors` 添加了请求拦截器和响应拦截器,可以在这里对请求和响应进行一些通用处理。
现在,你可以在其他文件中使用这个封装好的 http 实例来发送 HTTP 请求了。例如:
```javascript
import http from './http';
http.get('/users')
.then(response => {
console.log(response);
})
.catch(error => {
console.error(error);
});
```
这样就完成了使用 axios 封装 HTTP 请求的过程。你可以根据自己的需求,进一步扩展和优化这个封装。希望能对你有所帮助!如果还有其他问题,请随时提问。