欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

微信小程序wx.request()封装

程序员文章站 2024-03-13 23:26:34
...

 微信小程序开发过程中,请求用的次数是比较多的,那么能自己每次的重复代码太多,所以还是自己封装一个请求吧,使代码越来越精简。

现在请求分为两种一种是GET一种是POST,在微信小程序的请求中POST请求的header中的'content-type'为'application/x-www-form-urlencoded',就需要做一些区分

参数详解:

url 请求的地址
method 请求方式GET或POST
data 请求参数  示例{'name':'张三'}
callBack 回调函数

 说明:以下代码中的code具体以服务端返回的为准

// 公用网络请求
  commonRequest: function(url, method, data, callBack){
    //method    GET或POST
    var that = this,
      IP = that.globalData.IP,
      content_type = 'application/json',
      accessToken = wx.getStorageSync('accessToken'),
      longitude = wx.getStorageSync('longitude'),  //经度
      latitude = wx.getStorageSync('latitude'),  //纬度
      commParam = { 'longitude': longitude, 'latitude': latitude },  //公共参数
      commParam = JSON.stringify(commParam);   //公共参数转字符串
    if (method == 'POST'){
      content_type = 'application/x-www-form-urlencoded'
    }
    wx.request({
      url: IP + url,
      data: data,
      method: method,
      header: { 
        'content-type': content_type,
        'accessToken': accessToken,
        'commParam': commParam
      },
      success: function (res){
        // console.log(res.data)
        if(res.data.code == '200'){
          callBack({
            status: '200',
            hasData: true,
            datainfo: res.data.datas
          })
        } else if (res.data.code == '404'){
          //列表数据为空
          callBack({
            status: '404',
            hasData: false,
            datainfo: ''
          })
        } else if (res.data.code == '504'){
          //未登录或登录失效
          callBack({
            status: '504',
            hasData: false,
            datainfo: ''
          })
        }else {
          wx.showToast({
            title: res.data.message,
            icon: 'none',
            duration: 2000
          })
        }    
      },
      fail: function (res){
        wx.showToast({
          title: '请求超时',
          icon: 'none',
          duration: 2000
        })
      }
    })
  }

 

相关标签: 微信小程序 js