官方api发起请求:
wx.request
进行封装:要进行一些公共处理,比如添加处理拦截等等
在app.js中声明url前缀
url: '请求ip地址',
声明ajax方法
ajax(model) {
wx.showLoading({
title: '加载中',
})
//拼接url
model.url = this.url + model.url;
//get参数拼接
if (model.method == "get" && model.data !== undefined) {
for (let k in model.data) {
if (model.data[k].toString() !== '') {
model.url = model.url + "&" + k + "=" + model.data[k];
}
}
model.data='';
}
//返回Promise对象
return new Promise(
function (resolve) {
wx.request({
method: model.method,
url: model.url,
data: model.data,
success: (res) => {
wx.hideLoading()
if (res.statusCode == 200) {
resolve(res.data);
} else {
//错误信息处理
wx.showModal({
title: '提示',
content: '服务器错误,请联系客服',
showCancel: false,
})
}
}
})
}
)
},
使用方法:
每个js头部引入
let $ = getApp()
$.ajax({
method: 'get',
url: 'url',
data: this.data.param
}).then(response => {
})
关于get使用data,个人只是觉得每次在url后面拼接参数很麻烦就进行了二次处理,按照post的data一样传入即可