本篇內容主要講解“微信小程序充值頁面及小程序支付后回調怎么實現”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“微信小程序充值頁面及小程序支付后回調怎么實現”吧!
用戶在小程序中發起充值請求時,一般會先請求自己的服務器,將充值的參數發送給后端,然后后端會去請求微信充值,得到微信返回的統一下單的參數再返回給前端。前端調用wx.requestPayment API 即可喚起微信小程序的支付頁面,此時用戶輸入正確的支付密碼即可支付成功。具體流程如下:
wx.request({
url: "后端的充值接口",
method: "POST",
dataType: "json",
header: {
'content-type': 'application/x-www-form-urlencoded'
},
data: {
amount: amount, // 充值金額
token: token,
openId: openId
},
success: function (res) {
if (res.data.code == '1') {
that.setData({
payParams: res.data.data // 后端從微信得到的統一下單的參數
})
that.xcxPay(); // 拿到統一下單的參數后喚起微信支付頁面
}
}
})
2. 調用 wx.requestPayment 喚起微信支付界面。 wx.requestPayment({
'timeStamp': that.data.payParams.timestamp.toString(), // 時間戳必須是字符串,否則會報錯
'nonceStr': that.data.payParams.str,
'package': 'prepay_id=' + that.data.payParams.prepay_id, // 這里的值必須是 prepay_id=XXXXXXXXX 的格式,否則也會報錯
'signType': 'MD5',
'paySign': that.data.payParams.sign,
'success': function (res) {
// 這里應該是 res.errMsg , 跟公眾號的支付返回的參數不一樣,公眾號是 err_msg, 就因為沒注意到這個,折騰了很長時間
if(res.errMsg == "requestPayment:ok"){ // 調用支付成功
wx.redirectTo({
url: '../chargelist/chargelist' // 充值成功后的處理,可以跳轉,也可以根據自己的需要做其他處理
})
}else if(res.errMsg == 'requestPayment:cancel'){
// 用戶取消支付的操作
}
},
'fail': function (res) {
return false;
},
'complete': function (res) { }
})到此,相信大家對“微信小程序充值頁面及小程序支付后回調怎么實現”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。