亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

vue項(xiàng)目前端微信JSAPI與外部H5支付相關(guān)實(shí)現(xiàn)過(guò)程及常見(jiàn)問(wèn)題

瀏覽:205日期:2022-06-12 11:05:11

web端的微信支付可分為JSAPI與H5

JSAPI使用場(chǎng)景為微信內(nèi)部,而H5支付則是使用在非微信下的外部瀏覽器。

1.JSAPI

在微信內(nèi)部可以直接喚起微信瀏覽器的內(nèi)置對(duì)象 WeixinJSBridge廢話不多說(shuō)直接上代碼:

// 調(diào)用后端接口拿到JSAPI支付所需參數(shù),我在beforeRouteEnter的時(shí)候調(diào)用。api.apply.jsApiPay(obj).then(res => { if (res.data.code === ’0000’) { vm.params = res.data.bean } else { alert(’微信支付調(diào)起失敗!’) } }).catch(err => { alert(err) })// 點(diǎn)擊支付時(shí)候調(diào)用if (typeof WeixinJSBridge === ’undefined’) { if (document.addEventListener) { document.addEventListener(’WeixinJSBridgeReady’, this.onBridgeReady(this.params), false) } else if (document.attachEvent) { document.attachEvent(’WeixinJSBridgeReady’, this.onBridgeReady(this.params)) document.attachEvent(’onWeixinJSBridgeReady’, this.onBridgeReady(this.params)) } } else { this.onBridgeReady(this.params) }onBridgeReady (params) { const that = this WeixinJSBridge.invoke( ’getBrandWCPayRequest’, { appId: params.appId, // 公眾號(hào)名稱,由商戶傳入 timeStamp: params.timeStamp, // 支付簽名時(shí)間戳,注意微信jssdk中的所有使用timestamp字段均為小寫(xiě)。但最新版的支付后臺(tái)生成簽名使用的timeStamp字段名需大寫(xiě)其中的S字符 nonceStr: params.nonceStr, // 支付簽名隨機(jī)串,不長(zhǎng)于 32 位 package: params.prepay_id, // 統(tǒng)一支付接口返回的prepay_id參數(shù)值,提交格式如:prepay_id=***) signType: params.signType, // 簽名方式,默認(rèn)為’SHA1’,使用新版支付需傳入’MD5’ paySign: params.paySign // 支付簽名 }, function (res) { if (res.err_msg === ’get_brand_wcpay_request:ok’) { that.queryOrder() // 這里是查詢訂單是否支付完成,然后執(zhí)行成功和失敗的業(yè)務(wù)邏輯 } else if (res.err_msg === ’get_brand_wcpay_request:fail’) { alert(’支付失敗!’) } } ) },

在微信支付的回調(diào)函數(shù)中,當(dāng)res.err_msg 為

get_brand_wcpay_request:ok 時(shí),支付狀態(tài)不一定準(zhǔn)確,因此需要調(diào)用后端的查詢訂單接口,查詢是否支付完成,然后再執(zhí)行相應(yīng)的邏輯。

2、H5支付

h5相對(duì)簡(jiǎn)單,前端只需要跳轉(zhuǎn)到后端返回的鏈接即可

api.apply.h5Pay({ title: ’’ orderNum: ’’, expireMinute: 10, redirectUrl: `${window.location.origin}/pay/card?orderId=${vm.orderId}` }).then(res => { vm.h5PayUrl = res.data.bean // 查詢訂單 }).catch(err => { alert(err) })

第一步,請(qǐng)求后端接口,需要傳支付的標(biāo)題,訂單號(hào),支付時(shí)間,重定向鏈接。

第二部,們只需要點(diǎn)擊支付按鈕時(shí)候跳轉(zhuǎn)至后端返回鏈接即可。

window.location.href = this.h5PayUrl

需要注意的是H5支付查詢訂單需要用戶去手動(dòng)觸發(fā),因此需要增加一個(gè)確定訂單的彈層。如圖:

vue項(xiàng)目前端微信JSAPI與外部H5支付相關(guān)實(shí)現(xiàn)過(guò)程及常見(jiàn)問(wèn)題

查詢訂單是否支付成功與JSAPI一致~

到此這篇關(guān)于vue項(xiàng)目前端微信JSAPI與外部H5支付相關(guān)實(shí)現(xiàn)過(guò)程及常見(jiàn)問(wèn)題的文章就介紹到這了,更多相關(guān)vue項(xiàng)目前端微信JSAPI與外部H5支付相關(guān)實(shí)現(xiàn)過(guò)程及常見(jiàn)問(wèn)題內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: 微信
相關(guān)文章:
主站蜘蛛池模板: 九九久久久久久久爱 | 婷婷丁香五月中文字幕 | 中文字幕亚洲图片 | 成人特黄午夜性a一级毛片 成人爱av18丰满 | 国产成人经典三级在线观看 | 麻豆成人在线视频 | 亚洲免费三级 | 久久夜色撩人精品国产 | 精品国产一区二区三区在线观看 | 亚洲六区| 国产成人三级经典中文 | 97se狠狠狠狠狠亚洲综合网 | 国产精品视频一区二区三区w | 欧美一级特黄乱妇高清视频 | 青青青国产视频 | 日本aaaaa高清免费看 | 国产乱码精品一区二区 | 国产精品福利视频手机免费观看 | 亚洲国产成人久久综合碰 | 国产精品国产亚洲精品不卡 | 99热在线观看精品 | 久久久精品久久久久三级 | 大片免费观看在线视频 | 天堂久久久久va久久久久 | 亚洲黄色网址大全 | 国产亚洲欧美日本一二三本道 | 国产v精品成人免费视频400条 | 国产香蕉精品视频在 | 国产91福利在线精品剧情尤物 | 久久精品亚洲一区二区三区浴池 | 8050午夜一级全黄毛片 | 不卡视频一区二区 | 久久精品一区二区三区日韩 | 三级黄色片免费 | 国产欧美一区二区精品性色99 | 国产激情在线 | 久久一本一区二区三区 | 高h浪诱受肉耽文 | 狠狠色图片 | 精品一区二区在线观看 1080p | 97色在线视频观看香蕉 |