前言:
其實微信的網絡請求看起來也挺簡潔的但是爲了方便統一的模塊化管理,項目開發的初期最好先把應該封裝的模塊給做好,這樣會方便後面找代碼找bug的時候能夠更加的順利,當然做好這一切都是爲了..少加班
先來一段微信原生的網絡範文請求:
onLoad: function (options) {
wx.request({
method: 'GET',
url : "https://test003.cn:8787/server/goods/getGoodsById" //url僅供參考
header: {
'content-type': 'application/json'
},
data: {
money:10,
exp:10
},
success: function (res) {
console.log(res.data);
//邏輯代碼XX
}
})
},
再來一段封裝好的代碼:
//網絡訪問
network.networkget(url, params, (res) => {
console.log(res); //打印信息
let obj = res.obj;
}, (err) => {
console.log('請求錯誤信息:' + err.errMsg); //打印錯誤信息
});
是不是看起來簡潔明瞭多了.
下面開始進入正題:
第一步:在utils工具中新增js文件networkUtils.js
第二步:在networkUtils.js中添加下面代碼
//post請求
function networkpost(url, params, callback, errFun) {
wx.request({
url: url,
header: 'content-type:application/json',
data: params,
method: 'POST',
success: function (res) {
//返回結果自行處理
// console.log('返回結果:')
// console.log(res.data);
callback(res.data);
},
fail: function (err) {
errFun(err);
}
})
}
//get請求
function networkget(url, params, callback, errFun) {
wx.request({
url: url,
header: 'content-type:application/json',
data: params,
method: 'GET',
success: function(res) {
//返回結果自行處理
// console.log('返回結果:')
// console.log(res.data);
callback(res.data);
},
fail: function(err) {
errFun(err);
}
})
}
module.exports = {
networkget: networkget,
networkpost: networkpost
}
//工具使用說明(舉個栗子) 註釋
// const network = require('../../utils/networkUtils.js');
// let url = app.globalRequestUrl('goodsDetail');
// let params = { goodsId: goodsId, unionId: unionId };
// network.networkget(url, params, (res) => {
// console.log(res); //打印信息
// }, (err) => {
// console.log('請求錯誤信息:' + err.errMsg); //打印錯誤信息
// });
第三步:在代碼中使用
在Page的上方添加require代碼找到networkUtils.js
然後在代碼中調用方法,請求GET請求和POST請求
const network = require('../../utils/networkUtils.js');
Page({
data: {},
onLoad: function(options) {
let url = "https://test003.cn:8787/server/goods/getGoodsById" //url僅供參考
let params = {
goodsId: goodsId,
unionId: unionId
};
//網絡訪問GET請求
network.networkget(url, params, (res) => {
console.log(res); //打印信息
}, (err) => {
console.log('請求錯誤信息:' + err.errMsg); //打印錯誤信息
});
//網絡訪問POST請求
network.networkpost(url, params, (res) => {
console.log(res); //打印信息
}, (err) => {
console.log('請求錯誤信息:' + err.errMsg); //打印錯誤信息
});
},
})