這篇“小程序怎么通過小程序云實現(xiàn)微信支付功能”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“小程序怎么通過小程序云實現(xiàn)微信支付功能”文章吧。
目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計、五大連池網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。微信公眾號平臺功能微信支付商戶號管理關(guān)聯(lián)商戶號
云開發(fā)平臺設(shè)置其他設(shè)置微信支付配置添加商戶號
1.2那張圖上,點擊授權(quán)。管理員的微信就會跳出提示,點擊確定授權(quán)即可。
否則使用的時候,會出現(xiàn)sub_mch_id與sub_appid不匹配
的報錯!
payindex.js
const cloud = require("wx-server-sdk") cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) exports.main = async (event, context) => { const res = await cloud.cloudPay.unifiedOrder({ "body" : event.body, "outTradeNo" : event.outTradeNo, "spbillCreateIp" : "127.0.0.1", "subMchId" : "0000000000", //這里要注意:雖然key是子商戶id,實際上就是普通商戶id "totalFee" : parseInt(event.totalFee), //第二個坑:注意必須是數(shù)字,如果不是數(shù)字,則會報錯unifiedOrder:fail wx api error: -202 "envId": "ooo-xxxxxxxxxxxxxxxx", //這里是回調(diào)函數(shù)所屬的的云環(huán)境id "functionName": "payCallBack", //這個是回調(diào)函數(shù)名 "nonceStr":event.nonceStr, //第三個坑:官方文檔中相關(guān)云函數(shù)代碼沒有nonceStr和tradeType,測試的時候會報nonceStr不存在的錯,翻看文檔才發(fā)現(xiàn)這個是必填項,直接粘過來以后還需要加上這兩個參數(shù) "tradeType":"JSAPI" }) return res }
微信下單后獲得的數(shù)據(jù),好先保存到數(shù)據(jù)庫,留底
再去調(diào)起微信支付界面
//調(diào)用云函數(shù),微信統(tǒng)一下單 cloudPay(){ var _this = this this.setData({ body: "賬單支付-xxxxx", outTradeNo: this.data.id+"-"+util.uuid(16), totalFee: this.data.totalCost*100 //支付單位:分 }) app.showLoading(true) wx.cloud.callFunction({ name: "pay", data: { body: _this.data.body, outTradeNo: _this.data.outTradeNo, totalFee: _this.data.totalFee, nonceStr:util.uuid(32)//調(diào)用自己的uuid函數(shù) }, success(res) { // errCode: 0 // errMsg: "cloudPay.unifiedOrder:ok" // returnCode: "FAIL" // returnMsg: "total_fee is empty. " console.log("提交成功", res.result) if(res.result.returnCode!="SUCCESS"){ app.showToast(res.result.returnMsg) return } _this.unifiedOrder(res.result) // _this.requestPayment(res.result) }, fail(res) { console.log("提交失敗", res) } }) },
3.2 調(diào)起微信支付界面
//官方標(biāo)準(zhǔn)的支付方法,調(diào)起支付界面 requestPayment(payData) { var _this = this; const payment = payData.payment//這里注意,上一個函數(shù)的result中直接整合了這里要用的參數(shù),直接展開即可使用 wx.requestPayment({ ...payment, //...是展開變量的語法 success(res) { console.log("支付成功", res) _this.paySuccess() }, fail(res) { console.log("支付失敗", res) } }) },
不太建議直接在requestPayment的success回調(diào)函數(shù)中,執(zhí)行支付成功的操作
好在另外建一個云函數(shù)payCallBack
這個云函數(shù)payCallBack,調(diào)用我們自建服務(wù)器的接口,執(zhí)行支付成功的操作
這邊涉及到如何在云函數(shù)中調(diào)用http接口,賣個關(guān)子,后續(xù)講
以上就是關(guān)于“小程序怎么通過小程序云實現(xiàn)微信支付功能”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享文章:小程序怎么通過小程序云實現(xiàn)微信支付功能-創(chuàng)新互聯(lián)
文章源于:http://vcdvsql.cn/article46/cscehg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站改版、小程序開發(fā)、網(wǎng)站內(nèi)鏈、全網(wǎng)營銷推廣、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容