小程序api實現(xiàn)promise封裝過程解析
這篇文章主要介紹了小程序api實現(xiàn)promise封裝過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
微信小程序和支付寶小程序的api封裝方法是一樣的,都是外部新建一個js,使用module.exports導(dǎo)出,要注意的是,最好使用post請求,雖然get請求沒什么不好,主要是好修改。這里使用的MD5進行了token加密,最好還是把md5.js單獨寫下來(MD5函數(shù)js)
代碼如下
var app = getApp(); // 引入app.js里初始化數(shù)據(jù) 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, // 參數(shù) success: resolve, // 成功結(jié)果 headers: { "Content-Type": "application/x-www-form-urlencoded" }, // post請求頭 fail: reject, // 失敗結(jié)果 complete: next // 成功或者失敗都會調(diào)用的結(jié)果 }) }) } module.exports = { ajaxApi: function (url, params) { // 導(dǎo)出 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) }) } })
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
el-table動態(tài)渲染列、可編輯單元格、虛擬無縫滾動的實現(xiàn)
vue對數(shù)據(jù)處理很常見,本文主要介紹了對el-table組件二次封裝,包括對el-table的動態(tài)渲染、單元格編輯;對于無縫滾動的實現(xiàn),優(yōu)化大數(shù)據(jù)量下的頁面卡頓問題,感興趣的可以了解一下2023-12-12next.js初始化參數(shù)設(shè)置getServerSideProps應(yīng)用學(xué)習(xí)
這篇文章主要為大家介紹了next.js初始化參數(shù)設(shè)置getServerSideProps的應(yīng)用示例學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10javascript完美實現(xiàn)給定日期返回上月日期的方法
這篇文章主要介紹了javascript完美實現(xiàn)給定日期返回上月日期的方法,結(jié)合實例形式分析了javascript日期時間的計算技巧,并給出了格式化日期時間的操作方法,需要的朋友可以參考下2017-06-06