微信H5支付监听及页面重载处理方法
要监听微信H5支付是否成功,可以通过以下步骤:
- 使用微信支付回调函数监听支付结果 在发起支付时,可以使用微信支付的回调函数来监听支付的结果。可以在调用微信支付的API时,传入success、fail和cancel等回调函数,来处理支付成功、支付失败和支付取消的情况。
示例代码如下:
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
{
'appId': 'wx1234567890',
'timeStamp': '123456789',
'nonceStr': 'abcdefg',
'package': 'prepay_id=123456789',
'signType': 'MD5',
'paySign': 'abcdefg'
},
function(res) {
// 支付成功的回调
if (res.err_msg == 'get_brand_wcpay_request:ok') {
// 执行支付成功后的操作
}
// 支付失败的回调
else if (res.err_msg == 'get_brand_wcpay_request:fail') {
// 执行支付失败后的操作
}
// 支付取消的回调
else if (res.err_msg == 'get_brand_wcpay_request:cancel') {
// 执行支付取消后的操作
}
}
);
- 判断页面状态确定支付结果 当页面发生重载时,可以通过判断页面的状态来确定支付是否成功。可以在页面加载完成后,通过判断URL参数或者本地存储的标记来确定支付的结果。
示例代码如下:
window.onload = function() {
// 判断URL参数中是否包含支付成功的标记
if (location.href.indexOf('?paySuccess=true') !== -1) {
// 执行支付成功后的操作
}
// 判断URL参数中是否包含支付失败的标记
else if (location.href.indexOf('?payFail=true') !== -1) {
// 执行支付失败后的操作
}
// 判断URL参数中是否包含支付取消的标记
else if (location.href.indexOf('?payCancel=true') !== -1) {
// 执行支付取消后的操作
}
};
在发起支付时,可以在URL参数中添加标记,例如支付成功时可以重定向到http://example.com/?paySuccess=true,支付失败时可以重定向到http://example.com/?payFail=true,支付取消时可以重定向到http://example.com/?payCancel=true。
通过以上方式,可以监听微信H5支付的结果,并在页面重载后进行相应的处理。
原文地址: https://www.cveoy.top/t/topic/pgdU 著作权归作者所有。请勿转载和采集!