小程序中,我們一般習慣把提交接口請求的方法放在一個公共js里面。下面是一個簡單實現。
(1)我們把所有請求的地址都放在一個json里面
var postAddress = { "domin": "http://www.baidu.com", //域名 "getOpenId": "/index/getOpenId", //登錄獲取用戶信息 "orderlist": "/business/orderlist", "orderdetail": "/business/orderdetail", "initOrder": "/order/init" };
(2)封裝wx.request
function post(postName, paramData = {}, callback) { var data = {token: token}; //添加公共數據,比如token for (var key in paramData) { data[key] = paramData[key]; } var reqUrl = postAddress ['domin'] + postAddress [postName]; if (reqUrl) { wx.request({ method: "POST", header: { "Content-Type": "application/x-www-form-urlencoded;charset=utf-8" }, url: reqUrl, data: data, success: function (res) { if (callback != '') { callback(res); } }, fail: function (res) { console.log(JSON.stringify(res)); } }) } }
(3)對外提供方法
module.exports = {
post: post
}
(4)使用
在app.js中引入post.js
const util = require("./utils/post.js");
App({
onLaunch: function () {
wx.login({
success: res => {
if (res.code) {
util.post("getOpenId", {code: res.code}, function(ret){
if(ret.data.code == 200){
//獲取openId成功
}
});
}
}
}
})
也可以將util保存到app里面,在pages頁面使用,直接引用app即可。
const app = getApp()
