记一个微信支付-1错误JSAPI缺少参数app|get_brand_request:Fail
最近公司要做一个H5小游戏里边涉及到微信公众号支付,中间摸爬滚打遇到了很多坑。记录一下,留待后人看。
我们来看一下这个方法
GetJsApiParameters
怎么样,看起来像不像输出了一个JSON字符串作为微信支付JSAPI的参数?
但是如果你传了字符串进去,那不好意思,一准报错,我们必须在前端把这个json字符串对象化。
但是你以为这就完了么?不存在的。
我们的前端有一个公共的方法,会把JSON字符串转为JSON对象,但是传进去给这个微信的callpay方法,它都会自动的变成字符串(当然这也可能和我们前端框架有关系),我们试了各种方案,最后发现,不管你的数据类型是什么,在微信的jsApiCall()这个方法中,都对数据进行一下JSON.parse是最妥当的。
--------------------------------------------------分割线-----------------------------------------------------------
单纯的我以为这就完了,然而并没有,再后来我们发现这样也依旧会偶尔出现唤不起微信支付的情况,所以后来我们是
这么干的,尽管看起来什么也没做,但这样就是好使。如果你也遇到了同样的问题,建议你也试试这种解决方案。