上一篇一个二维码支持支付宝和微信支付(上)我们完成了一个二维码支持支付宝和微信扫描支付,但它的局限性在于只能用微信客户端扫描,如果用第三方浏览器扫描是不能用微信支付的,那本篇文章就来解析一下如何用第三方浏览器也能用微信支付。

据查资料,目前实现第三方浏览器也能支付微信订单是需要特殊权限的,而这种权限截止目前为止好像只提供给微信的合作商,我所知道的有优酷和京东支持,大家可以用手机非微信浏览器打开​​官方示例​​页面试试看效果。

那虽然目前只有少部分微信合作厂商有这个特殊权限,不给微信还是开放了相关文档,​​https://pay.weixin.qq.com/wiki/doc/api/wap.php?chapter=15_1​​这里就是H5调起微信支付的相关文档。

我们参照第一篇文章,这里需要注意的地方就是:

1.创建微信订单的时候trade_type的值是MWEB,并且spbill_create_ip这个参数一定要传正确的

map.put("trade_type", "MWEB");
map.put("spbill_create_ip", "xxx.xxx.xxx.xxx");

2.调用创建微信订单的之后微信会返回结果

其中有一个参数mweb_url,我们获取到这个参数的值,这就是微信返回的支付地址,引导用户访问这个地址就能打开支付页面了。

具体可以 参考微信官网文档,应该是不难理解的。

一个二维码支持支付宝和微信支付(下)_支付

                                    </div>
</div>