微信小程序> 微信小程序之二次封装request网络请求

微信小程序之二次封装request网络请求

浏览量:5285 时间: 来源:仇益阳

哈喽!今天给大家分享一个小技巧,大家做小程序项目的时候肯定会遇到数据对接,需要用到wx.request()这个方法,因为我们通常要进行多次的数据请求。于是乎又给大家带来一个偷懒的方法。还是老方法。封装
首先我们来看一下官方文档中介绍的wx.request()
小程序
正常用的时候我们是这样用的

wx.request({  url: 'test.php', //仅为示例,并非真实的接口地址  data: {     x: '' ,     y: ''  },  header: {      'content-type': 'application/json' // 默认值  },  success: function(res) {    console.log(res.data)  }})

但是由于我们一个项目当中经常要用到这个方法
所以我们就可以把它进行二次封装成自己喜欢的写法
以我为例,首先我们在utils这个里面建立一个config.js用来作为配置文件。把所有的二次封装的东西放在里面。怎么简单怎么来。
对于函数封装,每个人封装的方式方法也不一样,我就贴上我的代码分享一下

/** * 自定义request请求基类 */function ajax(Type, params, url, successData, errorData, completeData) {//设置默认数据传数格式  var methonType = "application/json";  //访问的主域名  var https = "http://love.w.bronet.cn"  //判断请求方式  if (Type === 'PUT') {    var p = Object.keys(params).map(function (key) {      return encodeURIComponent(key) + "=" + encodeURIComponent(params[key]);    }).join("&");    url += '?' + p;    params = {}  }  if (Type == "POST") {    methonType = "application/x-www-form-urlencoded"  }  //开始正式请求  wx.request({    url: https + url,    method: Type,    header: {      'content-type': methonType,    },    data: params,    //成功回调    success: (res) => {      successData(res)    },    //错误回调    error(res) {    //检测是否传参errorData,如果有则执行回调errorData(res)      if (errorData) {        errorData(res)      }    },    //检测是否传参completeData,如果有则执行回调completeData(res)    complete(res) {      if (completeData) {        completeData(res)      }    }  })};

这样就封装了一个简单的wx.request()请求
然后在config.js里导出来

//导出模块module.exports = {    ajax:ajax}

用的时候直接引入config.js文件

const config = require('../../utils/config.js');    config.ajax('POST', {      //参数      uid: 6    }, config.myCenter, (res) => {        //成功函数回调区间,必写    }, (res) => {        //可写可不写,写即为失败回调    },(res) => {        //可写可不写,写即为不管失败或成功都进行回调    })

这样用起来就特别方便,只需要几句代码就可以解决数据请求问题,最简短的方法如下

config.ajax('POST', {      //参数      uid:6    }, config.myCenter, (res) => {        //成功函数回调区间,必写    })

谢谢大家能够阅读我这篇文章,感谢支持。我是小九

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎