前段时间在h5页面中调微信和支付宝支付,发现微信支付的页面跳转逻辑和支付宝支付的页面跳转逻辑是不同的。
区别在于用户支付成功,或者选择放弃支付的时候会有差别,这里稍微做一下总结。
支付宝支付
支付宝支付比较简单,也没有什么坑可以总结的,我们只需要在调起支付的时候往相应的接口中添加上支付后跳转的页面路由即可,在用户支付成功后,页面会跳转到我们在接口中设置的跳转页,如果用户选择不进行支付,则页面直接返回到了原支付页面,就简单的返回了上一页。逻辑很清晰也很容易理解。
微信支付
微信支付个人感觉做的效果是没有支付宝好的,不好点在于,如果用户选择了不进行支付,那么这个时候页面不会像支付宝那样回到上个页面,而是不论支付是否成功,都会跳转到我们在接口中设置的支付后跳转页。
这个原因似乎是因为微信没有办法判断用户是否已经支付了,所以不管选择放弃支付还是进行了支付都会跳转到支付后跳转页。
而我们一般做的逻辑就是,在支付后的跳转页里边做一个弹框,并在用户点击的时候再通过后端的接口调取一下微信的接口看到底有没有支付成功,这个时候才能真正确定用户到底有没有进行支付。
如果有问题,欢迎指正。