Q:网上很多封装http请求的方法,我就收藏了一种比较通俗易懂的方法。
A:对封装的要求:一是在封装函数里设置header,发送token。二是在封装函数里对后台返回的参数作出统一处理,例如如果statusCode不返回200,统一做出异常处理,相当于过滤功能。
var API_COMMON = ‘http://192.168.2.105:8080/‘ var requestHandler = { params: {}, success: function (res) { // success }, fail: function () { // fail }, } //GET请求 function GET(url,requestHandler) { request(‘GET‘, url, requestHandler) } //POST请求 function POST(url,requestHandler) { request(‘POST‘, url, requestHandler) } function request(method, url, requestHandler) { //注意:可以对params加密等处理 var params = requestHandler.params; wx.request({ url: API_COMMON + url, data: params, method: method, // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT header: { token: wx.getStorageSync(‘whToken‘) }, success: function (res) { //注意:可以对参数解密等处理 res.statusCode == 200 ? requestHandler.success(res) : console.log(res); }, fail: function () { requestHandler.fail() }, complete: function () { // complete } }) }
调用也很简单:
let params = {code: app.globalData.code} utils.POST("mp/login", { params: params, success: res => { console.log(res) }, fail: () => { } })
原文地址:https://www.cnblogs.com/weihuan/p/8359440.html
时间: 2024-10-30 05:02:17