小程序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 相关文章推荐
JS event使用方法详解
Apr 28 Javascript
js拦截alert对话框另类应用
Jan 16 Javascript
JS代码判断IE6,IE7,IE8,IE9的函数代码
Aug 02 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
Mar 25 Javascript
AngularJS基础学习笔记之控制器
May 10 Javascript
JQuery中DOM加载与事件执行实例分析
Jun 13 Javascript
跟我学习javascript的循环
Nov 18 Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
Sep 17 Javascript
微信小程序 地图(map)实例详解
Nov 16 Javascript
EasyUI学习之Combobox下拉列表(1)
Dec 29 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
Sep 10 Javascript
jQuery实现动态添加和删除input框实例代码
Mar 26 jQuery
如何基于原生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实现数字补零功能的2个函数介绍
2014/05/12 PHP
一款简单实用的php操作mysql数据库类
2014/12/08 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
2017/08/01 PHP
一个无限级XML绑定跨框架菜单(For IE)
2007/01/27 Javascript
jQuery Mobile页面跳转后未加载外部JS原因分析及解决
2013/03/18 Javascript
javascript实现促销倒计时+fixed固定在底部
2013/09/18 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
javascript实现随时变化着的背景颜色
2015/04/02 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
2015/08/17 Javascript
全面解析Javascript无限添加QQ好友原理
2016/06/15 Javascript
js HTML5上传示例代码完整版
2016/10/10 Javascript
手把手带你封装一个vue component第三方库
2019/02/14 Javascript
深入了解响应式React Native Echarts组件
2019/05/29 Javascript
刷新页面后让控制台的js代码继续执行
2019/09/20 Javascript
实例分析JS中的相等性判断===、 ==和Object.is()
2019/11/17 Javascript
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
Python中动态创建类实例的方法
2017/03/24 Python
python实现三维拟合的方法
2018/12/29 Python
python使用socket实现的传输demo示例【基于TCP协议】
2019/09/24 Python
python实现的批量分析xml标签中各个类别个数功能示例
2019/12/30 Python
tensorflow没有output结点,存储成pb文件的例子
2020/01/04 Python
基于TensorFlow常量、序列以及随机值生成实例
2020/01/04 Python
Python中import导入不同目录的模块方法详解
2020/02/18 Python
Answear匈牙利:来自全球200多个知名时尚品牌
2017/04/21 全球购物
大学生毕业求职简历的自我评价
2013/10/24 职场文书
演讲稿怎么写才完美
2014/01/02 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
幼儿园庆六一活动方案
2014/03/06 职场文书
酒店优秀员工事迹材料
2014/06/02 职场文书
现场活动策划方案
2014/08/22 职场文书
社区义诊通知
2015/04/24 职场文书
毕业设计致谢语
2015/05/14 职场文书
2015秋季新学期开学寄语
2015/05/28 职场文书
2015大学生暑假调查报告
2015/07/13 职场文书
幼儿园体操比赛口号
2015/12/25 职场文书
初中数学课堂教学反思
2016/02/17 职场文书