在uniapp中可以通过以下方式封装请求:
1. 创建一个request.js文件,导出请求函数:
// request.js
import config from './config'
export default (url, data, method='GET') => {
return new Promise((resolve, reject) => {
uni.request({
url: config.baseUrl + url,
data,
method,
header: {
Authorization: uni.getStorageSync('token')
},
success: (res) => {
//此处Code根据自己项目实际情况来写
if(res.statusCode == 200){
resolve(res.data);
}else{
reject(res)
}
},
fail: (err) => {
reject(err)
}
})
})
}
2. 在需要调用的页面中导入并使用:
import request from '@/utils/request.js'
request('/user', {id: 123}, 'POST').then(res => {
// 拿到返回数据
}).catch(err => {
// 处理异常
})
3. 也可以进一步封装get、post方法:
export const get = (url, data) => request(url, data, 'GET')
export const post = (url, data) => request(url, data, 'POST')
4. 添加拦截器、loading等来进行更丰富的封装。
这样可以抽离出一个请求核心文件,对所有请求进行统一管理。