vue封装http请求
时间: 2023-08-13 13:11:40 浏览: 104
vue的$http的get请求要加上params操作
在Vue中封装HTTP请求可以通过使用axios库来实现。下面是一个简单的示例:
1. 首先,安装axios库。可以使用npm或者yarn进行安装:
```
npm install axios
```
2. 在Vue项目的入口文件(通常是main.js)中引入axios:
```javascript
import axios from 'axios'
```
3. 创建一个封装HTTP请求的模块,例如`api.js`,并设置基本的请求配置:
```javascript
import axios from 'axios'
// 创建一个axios实例
const http = axios.create({
baseURL: 'http://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
```
4. 在需要发送HTTP请求的地方引入并使用`api.js`中封装的方法:
```javascript
import http from './api'
// 发送GET请求
http.get('/users')
.then(response => {
console.log(response)
})
.catch(error => {
console.error(error)
})
// 发送POST请求
http.post('/users', { name: 'John Doe' })
.then(response => {
console.log(response)
})
.catch(error => {
console.error(error)
})
```
这样,你就可以在Vue项目中轻松地封装和发送HTTP请求了。当然,你还可以根据实际需求进行更多的封装和处理。希望这能对你有所帮助!
阅读全文