小程序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 相关文章推荐
在JQuery dialog里的服务器控件 事件失效问题
Dec 08 Javascript
jQuery中读取json文件示例代码
May 10 Javascript
jQuery遍历json的方法(推荐)
Jun 12 Javascript
Ionic+AngularJS实现登录和注册带验证功能
Feb 09 Javascript
jQuery实现的背景颜色渐变动画效果示例
Mar 24 jQuery
Angular使用Md5加密的解决方法
Sep 16 Javascript
微信小程序wx.previewImage预览图片实例详解
Dec 07 Javascript
代码详解Vuejs响应式原理
Dec 20 Javascript
vue .js绑定checkbox并获取、改变选中状态的实例
Aug 24 Javascript
JavaScript解析及序列化JSON的方法实例分析
Jan 04 Javascript
JavaScript实现简单贪吃蛇效果
Mar 09 Javascript
js实现随机抽奖
Mar 19 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页面中文乱码分析
2013/10/29 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
2016/11/15 PHP
php技巧小结【推荐】
2017/01/19 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
2019/10/11 PHP
ajax 同步请求和异步请求的差异分析
2011/07/04 Javascript
jQuery Ajax 仿AjaxPro.Utility.RegisterTypeForAjax辅助方法
2011/09/27 Javascript
用Jquery.load载入页面实现局部刷新
2014/01/22 Javascript
微信小程序(应用号)开发新闻客户端实例
2016/10/24 Javascript
Ajax的概述与实现过程
2016/11/18 Javascript
基于javascript实现最简单选项卡切换
2017/02/01 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
Angular实现图片裁剪工具ngImgCrop实践
2017/08/17 Javascript
小程序ios音频播放没声音问题的解决
2018/07/11 Javascript
Jquery获取radio选中值实例总结
2019/01/17 jQuery
js实现登录拖拽窗口
2020/02/10 Javascript
Node Mongoose用法详解【Mongoose使用、Schema、对象、model文档等】
2020/05/13 Javascript
何时/使用 Vue3 render 函数的教程详解
2020/07/25 Javascript
vue-router懒加载的3种方式汇总
2021/02/28 Vue.js
python的dataframe转换为多维矩阵的方法
2018/04/11 Python
python linecache 处理固定格式文本数据的方法
2019/01/08 Python
Python3 执行Linux Bash命令的方法
2019/07/12 Python
python3实现的zip格式压缩文件夹操作示例
2019/08/17 Python
详解Python 字符串相似性的几种度量方法
2019/08/29 Python
AmazeUI 导航条的实现示例
2020/08/14 HTML / CSS
Talbots官网:美国成熟女装品牌
2019/11/15 全球购物
编写一个类体现构造,公有,私有方法,静态,私有变量
2013/08/10 面试题
介绍一下Make? 为什么使用make
2013/12/08 面试题
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
光电信息专业应届生求职信
2013/10/07 职场文书
英语自荐信常用语句
2013/12/13 职场文书
秋季运动会演讲稿
2014/09/16 职场文书
酒店财务总监岗位职责
2015/04/03 职场文书
少先队工作总结2015
2015/05/13 职场文书
班主任远程培训研修日志
2015/11/13 职场文书
数据设计之权限的实现
2022/08/05 MySQL