uniapp封装axios
时间: 2023-07-04 21:08:38 浏览: 110
ts封装简单封装axios
在Uniapp中,我们可以使用uni.request()方法来进行网络请求,但是如果需要封装axios,可以按照以下步骤进行:
1. 新建一个http.js文件,在该文件中引入uni.request()方法,并对其进行二次封装,如下所示:
```javascript
import Vue from 'vue'
import axios from 'axios'
// 创建一个axios实例
const service = axios.create({
baseURL: process.env.BASE_API, // api的base_url
timeout: 5000 // 请求超时时间
})
// request拦截器
service.interceptors.request.use(config => {
// 在发送请求之前做一些处理,如加上token等操作
return config
}, error => {
// 请求错误处理
Promise.reject(error)
})
// response拦截器
service.interceptors.response.use(
response => {
// 对响应数据做处理,如去掉响应头中的一些无用信息等操作
return response.data
},
error => {
// 响应错误处理
return Promise.reject(error)
}
)
// 将封装后的axios实例添加到Vue原型中,方便全局使用
Vue.prototype.$http = service
export default service
```
2. 在需要使用axios的地方引入http.js文件即可。
```javascript
import request from './http'
request.get('/user/info').then(res => {
console.log(res)
}).catch(err => {
console.log(err)
})
```
这样就完成了axios的封装,可以方便地进行网络请求。
阅读全文