之前都是使用LeanCloud为存储,现在用传统API调用时做如下封装var HOST = '';// 网站请求接口,统一为postfunction post(req) { //发起网络请求 wx.request({ url: HOST + ...
之前都是使用LeanCloud为存储,现在用传统API调用时做如下封装
var HOST ='';
// 网站请求接口,统一为post
function post(req){
//发起网络请求
wx.request({
url: HOST + req.uri,
data: req.param,
header:{
"content-type":"application/x-www-form-urlencoded"
},
method:'POST',
success:function(res){
req.success(res.data)
},
fail:function(res){
console.log(res);
}
})
}
// 导出模块
module.exports ={ post: post
}
然后前端调用就可以这样做了:
var http =require('../../utils/http.js');
...
http.post({
uri: http.orderListUri,
param:{
third_session: wx.getStorageSync('third_session')
},
success:function(data){
that.setData({
orderList: data
});
}
});
一般对自己写的接口给自己用的时候,method方法或header都是约定好的,所以不用重复书写。
1 header:{
2"content-type":"application/x-www-form-urlencoded"
3},
4 method:'POST'
而fail回调方法也可以统一处理;进一步地,也可以对success回调里的针对code值进一步判断,特定错误码统一处理,比如跳转登录页面等。