用uniapp封装uni.request请求

1,315 阅读1分钟

blog.csdn.net/weixin\_463…

一、uniapp封装request请求

1.封装请求头

代码如下(示例):

//设置请求头
config.header = {
	'content-type': 'application/json',
};
//检查缓存中有没有token
var token = wx.getStorageSync('token');
if (token != '') {
	header = {
		'content-type': 'application/json',
		'Authorization': 'Bearer ' + token
	};
}

2.用promise包装一层uni.request请求

let promise = new Promise(function(resolve, reject) {
		uni.request({
			header:header,
			url:baseUrl+url,
			method:method,
			success: (res) => {
				resolve(res)
				console.log(res)
			},
			fail: (res) => {
				reject(res)
				console.log(res)
			}
		})
	})

3.完整的代码

const baseUrl = "XXXXXXXXXXX";
export function https(url,method) {
	//设置请求头
	var header = {
		'content-type': 'application/json',
	};
	//检查缓存中有没有token
	var token = wx.getStorageSync('token');
	if (token != '') {
		header = {
			'content-type': 'application/json',
			'Authorization': 'Bearer ' + token
		};
	}
	let promise = new Promise(function(resolve, reject) {
		uni.request({
			header:header,
			url:baseUrl+url,//请求地址
			method:method,//请求方式
			success: (res) => {
				resolve(res)
				console.log(res)
			},
			fail: (res) => {
				reject(res)
				console.log(res)
			}
		})
	})
	return promise
}

二、用封装的请求获取数据

1.引入库

代码如下(示例):

//根据自己包的位置
import {https} from '../../common/HttpUtil.js'

2.读入数据

代码如下(示例):

https('/xxx/xx/xxx/xxx','get').then(res=>{
        //res即为获取到的数据
	console.log(res)
})