小程序api实现promise封装过程解析


Posted in Javascript onNovember 21, 2019

这篇文章主要介绍了小程序api实现promise封装过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

微信小程序和支付宝小程序的api封装方法是一样的,都是外部新建一个js,使用module.exports导出,要注意的是,最好使用post请求,虽然get请求没什么不好,主要是好修改。这里使用的MD5进行了token加密,最好还是把md5.js单独写下来(MD5函数js)

代码如下

var app = getApp(); // 引入app.js里初始化数据
var MD5 = require('./md5.js')
function ApiFun (url,params) {
 var param = {}
 let timeStamp = Number(new Date()) // 时间戳
 let Token = "*******"
 return new Promise((resolve, reject,next) => {
  my.request({ // 支付宝小程序是my,微信小程序是wx
   url: app.globalData.baseUrl + url, // 域名+接口名称
   method: "POST",
   data: params, // 参数
   success: resolve, // 成功结果
   headers: {
    "Content-Type": "application/x-www-form-urlencoded"
   }, // post请求头
   fail: reject, // 失败结果
   complete: next // 成功或者失败都会调用的结果
  })
 })
}
module.exports = {
 ajaxApi: function (url, params) { // 导出
  return ApiFun(url, params).then(res => res.data)
 }
}

使用方法在page页面的js中

var app = getApp();
var api =require('/pages/utils/api.js')
Page({
  onShow() {
    api.ajaxApi('/**/list',{
      page:1,
      prePage:100
    }).then(res => {
       console.log(res)
    })
  }
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
use jscript with List Proxy Server Information
Jun 11 Javascript
javascript对象的使用和属性操作示例详解
Mar 02 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
Sep 10 Javascript
Easyui form combobox省市区三级联动
Jan 13 Javascript
Treegrid的动态加载实例代码
Apr 29 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
Jan 20 Javascript
webpack开发跨域问题解决办法
Aug 03 Javascript
JavaScript实现body内任意节点的自定义属性功能示例
Sep 18 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
Apr 04 Javascript
vue中v-for循环选中点击的元素并对该元素添加样式操作
Jul 17 Javascript
js实现无缝轮播图插件封装
Jul 31 Javascript
JavaScript交换变量常用4种方法解析
Sep 02 Javascript
如何基于原生javaScript生成带图片的二维码
Nov 21 #Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
Nov 21 #Javascript
vue element 中的table动态渲染实现(动态表头)
Nov 21 #Javascript
浅谈Vue SSR中的Bundle的具有使用
Nov 21 #Javascript
webpack常用构建优化策略小结
Nov 21 #Javascript
Vue 中 filter 与 computed 的区别与用法解析
Nov 21 #Javascript
js实现课堂随机点名系统
Nov 21 #Javascript
You might like
PHP 上传文件的方法(类)
2009/07/30 PHP
Blitz templates 最快的PHP模板引擎
2010/04/06 PHP
PHP mkdir()无写权限的问题解决方法
2014/06/19 PHP
PHP中把有符号整型转换为无符号整型方法
2015/05/27 PHP
php使用文本统计访问量的方法
2016/05/12 PHP
php基于curl重写file_get_contents函数实例
2016/11/08 PHP
Javascript typeof 用法
2008/12/28 Javascript
你需要知道的10个最佳javascript开发实践小结
2012/04/15 Javascript
javascript面向对象包装类Class封装类库剖析
2013/01/24 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
2014/05/11 Javascript
了不起的node.js读书笔记之mongodb数据库交互
2014/12/22 Javascript
Jquery中CSS选择器用法分析
2015/02/10 Javascript
js实现的简单radio背景颜色选择器代码
2015/08/18 Javascript
JavaScript省市区三级联动菜单效果
2016/09/21 Javascript
Angular.js之作用域scope'@','=','&'实例详解
2017/02/28 Javascript
微信小程序开发中的疑问解答汇总
2017/07/03 Javascript
了解Javascript中函数作为对象的魅力
2019/06/19 Javascript
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
python获取文件真实链接的方法,针对于302返回码
2018/05/14 Python
python 异或加密字符串的实例
2018/10/14 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
PyTorch 对应点相乘、矩阵相乘实例
2019/12/27 Python
python利用JMeter测试Tornado的多线程
2020/01/12 Python
css3 自定义字体font-face使用介绍
2014/05/14 HTML / CSS
美国羊皮公司:Overland
2018/01/15 全球购物
大学生关于奋斗的演讲稿
2014/01/09 职场文书
一月红领巾广播稿
2014/02/11 职场文书
十佳中学生事迹材料
2014/06/02 职场文书
美术兴趣小组活动总结
2014/07/07 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
大学毕业典礼致辞
2015/07/29 职场文书
学校团代会开幕词
2016/03/04 职场文书
使用Djongo模块在Django中使用MongoDB数据库
2021/06/20 Python
SQL 聚合、分组和排序
2021/11/11 MySQL