封装一个四种方式最全的uniapp请求
时间: 2023-08-08 22:07:23 浏览: 131
uniapp 请求代码封装
好的,以下是四种方式最全的uniapp请求的封装方法:
1. 使用 uni.request 方法进行请求:
```
export function request(url, method, data) {
return new Promise((resolve, reject) => {
uni.request({
url: url,
method: method,
data: data,
header: {
'Content-Type': 'application/json'
},
success: function(res) {
resolve(res.data)
},
fail: function(err) {
reject(err)
}
})
})
}
```
2. 使用 uni.request 方法进行请求,并进行拦截器处理:
```
import store from '@/store'
// 请求拦截器
uni.interceptors.request.use((config) => {
if (store.state.token) {
config.header.Authorization = store.state.token
}
return config
}, err => {
return Promise.reject(err)
})
// 响应拦截器
uni.interceptors.response.use(response => {
return response.data
}, err => {
return Promise.reject(err)
})
export function request(url, method, data) {
return new Promise((resolve, reject) => {
uni.request({
url: url,
method: method,
data: data,
header: {
'Content-Type': 'application/json'
},
success: function(res) {
resolve(res.data)
},
fail: function(err) {
reject(err)
}
})
})
}
```
3. 封装一个基于 Promise 的请求方法:
```
export function request(url, method, data) {
return new Promise((resolve, reject) => {
uni.request({
url: url,
method: method,
data: data,
header: {
'Content-Type': 'application/json'
},
success: function(res) {
resolve(res.data)
},
fail: function(err) {
reject(err)
}
})
})
}
export function get(url, data) {
return request(url, 'GET', data)
}
export function post(url, data) {
return request(url, 'POST', data)
}
export function put(url, data) {
return request(url, 'PUT', data)
}
export function del(url, data) {
return request(url, 'DELETE', data)
}
```
4. 使用 axios 库进行请求:
```
import axios from 'axios';
// 请求拦截器
axios.interceptors.request.use((config) => {
return config;
}, err => {
return Promise.reject(err);
})
// 响应拦截器
axios.interceptors.response.use(response => {
return response.data;
}, err => {
return Promise.reject(err);
})
export function request(url, method, data) {
return axios({
url: url,
method: method,
data: data,
header: {
'Content-Type': 'application/json'
}
})
}
```
以上是四种方式最全的uniapp请求的封装方法,可以根据实际需要选择适合自己的方式进行使用。
阅读全文