2019-07-15微信小程序封装http请求---(promise)

微信小程序封装http请求---(promise)

在顶级app.js中添加全局url地址


封装方法

/**

  * 封装wx.request请求

  * method: 请求方式

  * url: 请求地址

  * data: 要传递的参数

  * cookie : 请求token

  * callback: 请求成功回调函数

  * errFun: 请求失败回调函数

  * 以对象方式进行传参

  **/

  wxRequest({method, url, cookie, data, callback, errFun}) {

    return new Promise((resove, reject) => {

      wx.request({

        url: url,

        method: method,

        data: data,

        header: {       // 定义请求头

          'content-type': method == 'GET' ? 'application/json' : 'application/x-www-form-urlencoded',

          'Cookie': cookie

        },

        dataType: 'json',

        success: function (res) {

            // 这里可以做请求拦截

           callback(res)

        },

        fail: function (err) {

          reject(err);

        }

      })

    })


OK! 方法封装完毕!我们就可以用原生promise的方法来获取请求回来的数据啦!就不用再去使用微信小程序的success来获取成功的数据。

在其他页面调用app.js方法:

// 页面开始  先获取应用实例

const app = getApp()


// 在需要的函数内部进行函数的调用


搞定!这样封装一下用回到熟悉的axios的写法,就可以用到我们的async 、await 来解决异步。

求各位大佬多多指教!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Promise 对象 Promise 的含义 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函...
    neromous阅读 8,729评论 1 56
  • 花了一周多时间最详细的整理了PHPSTORM+XDEBUG的调试教程,实现了php程序的远程调试、单步调试、跟踪等...
    school_1087阅读 424评论 0 0
  • # Ajax标签(空格分隔): 笔记整理---[TOC]### 从输入网址开始:- 在学习ajax之前,你应该先了...
    V8阅读 279评论 1 0
  • 作者:潮落舟链接:https://www.jianshu.com/p/b72c1e06b140来源:简书 0.1....
    李绍俊阅读 641评论 0 0
  • 为什么需要JavaScript以前使用setTimeout和setInterval进行动画控制,由于事件队列的问题...
    __唐一__阅读 208评论 0 0