这篇文章主要介绍了小程序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) }) } })