咱们先看规则:html
前两条比较容易理解,vue
可是看到第三条的时候有一些蒙圈有木有?若是有,请继续往下看微信
而后就各类搜索,搜出来的文章会让你更加蒙圈有木有?大多数文章都是写微信支付的坑,可是对于解决方法倒是语焉不详。微信支付
-------------------------------------分割线----------------------------------------htm
本人当前项目使用vue全家桶作微信H5 开发,一个SPA应用,其中有用到公众号的微信支付。在支付受权目录上也是折腾了好久。blog
回到支付受权目录的设置第三条上面,这句话自己写得确实让人看不明白,甚至会将人引入歧途。开发
第一次调用Weixin.chooseWXPay时弹出的提示是{“errMsg”:”chooseWXPay:fail”},是的,没有一点多余的信息,最后查文档才发现是没有配置微信支付受权目录。文档
配置的具体规则是这样的:域名
一、配置
好比:调用以上JSSDK的页面地址为 http://a.b.com/pay/weixin/c.html,
那么:受权目录配置为 http://a.b.com/pay/weixin/
二、
好比:调用以上JSSDK的页面地址为 http://a.b.com/pay/weixin,
那么:受权目录配置为 http://a.b.com/pay/
三、
好比:调用以上JSSDK的页面地址为 http://a.b.com/pay,
那么:受权目录配置为 http://a.b.com/
四、若是有QueryString,自动忽略
好比:调用以上JSSDK的页面地址为 http://a.b.com/pay/weixin/c.html?name=mango,
那么:受权目录配置为 http://a.b.com/pay/weixin/
但是,我这是基于vue的SPA,
亲测将支付受权目录配置为域名便可。
好比:调用以上JSSDK的页面地址为 http://a.b.com/#/pay/weixin/c.html?name=mango,
那么:受权目录配置为 http://a.b.com/