问个好先
最近接收一个微信项目,以前也没碰过,突然间支付那块儿出问题了,微信的JSAPI支付接口也就是WeixinJSBridge.invoke("getBrandWCPayRequest".....这个东西一直返回:get_brand_wcpay_request:fail,然后就没有然后了。
我去公众平台官网技术文档的JSAPI技术文档看了下,看的云里雾里,跟我项目里代码完全不一样,后来才知道我那个项目里的是微信支付V2版本,官网里的是V3,然后我又在“https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6”找到一个H5网页调用JS支付的一个文档,不幸的是,看起来跟我调用的很像,但参数还是不一样,貌似也是V3的。百度了一下这个关键词“get_brand_wcpay_request:fail”,还有说新版微信不支持这种调用了,但不确定,因为官网没说不能用。
所以现在我的处境根本就是绝境,既不知道到底我那部分代码能不能用,也找不到任何有帮助的信息,也不干升级支付,我看了升级支付还设计好多东西。现在无可奈何,寻求帮助,希望有这方面经验的前辈不吝赐教!
我真是很奇怪,从来没有见过这么混乱的技术文档,这是什么玩意儿。太恼火。
微信支付现在分为v2版和v3版,2014年9月10号之前申请的为v2版,之后申请的为v3版。V3版的微信支付没有paySignKey参数。
两个版本取决于申请时间,是不能转换的,代码和流程也有很大的不同。
现在调用微信的jsapi需要先通过权限验证,你这个问题的解决办法就是使用微信的jssdk进行jsapi支付,但服务端的微信支付代码还是用原来的。