公司动态

微信h5支付跳转到的页面没有刷新

微信h5支付跳转到的页面没有刷新 公司动态 广力云

随着移动支付的流行,微信支付的H5支付也逐渐受到了广泛使用。一些商家和企业通过微信H5支付来提供商品和服务,为用户带来更加便捷的支付体验。但是,在使用微信H5支付的过程中也会遇到一些问题,其中一个常见的问题就是支付完成后页面没有刷新的情况。

为了解决这个问题,我们需要了解微信支付H5支付的原理。在使用微信H5支付时,用户在商户的移动网页上选择了商品或服务并确认使用微信支付后,商户通过接口调用支付请求,并发起本服务呼起微信客户端进行支付。支付完成后,微信将会跳转回商户的支付结果页面,并且携带支付结果参数。但是,在这个过程中,如果商户的支付结果页面没有处理这些参数并刷新页面,那么就会出现支付完成后页面没有刷新的情况。

为了解决这个问题,我们可以在商户的支付结果页面中添加一些代码,来处理微信支付完成后传回的支付结果参数并刷新页面。具体的做法如下:

1. 在商户的支付结果页面中添加以下代码:

```javascript

function onBridgeReady(){

WeixinJSBridge.call('getBrandWCPayRequest', {

"appId":"wx2421b1c4370ec43b", //公众号名称,由商户传入

"timeStamp":"1395712654", //时间戳,自1970年以来的秒数

"nonceStr":"e61463f8efa94090b1f366cccfbbb444", //随机串

"package":"prepay_id=u802345jgfjsdfgsdg888",

"signType":"MD5", //微信签名方式:

"paySign":"70EA570631E4BB79628FBCA90534C63FF7FADD89" //微信签名

}, function(res){

if(res.err_msg == "get_brand_wcpay_request:ok" ){

// 使用以上方式判断前端返回,微信团队郑重提示:

//res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。

}

});

}

if (typeof WeixinJSBridge == "undefined"){

if( document.addEventListener ){

document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);

}else if (document.attachEvent){

document.attachEvent('WeixinJSBridgeReady', onBridgeReady);

document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);

}

}else{

onBridgeReady();

}

```

2. 在商户平台中设置支付结果通知URL。当用户完成支付后,微信支付会将支付结果通知商户平台,通知URL中必须包含商户处理支付结果的代码。具体地,在商户平台的设置中,找到支付结果通知URL,设置为:

```

http://www.example.com/weixin/pay.php

```

其中,`http://www.example.com/weixin/pay.php`就是商户的支付结果处理页面。

通过以上的方法,我们可以在支付完成后让页面及时刷新,避免因为页面没有刷新导致支付出现问题。同时,还需要注意在设置支付结果通知URL时,保证商户的支付结果处理代码正确无误。

电话咨询 立即申请