最近项目中临时需要接入微信支付,由于前端是H5写的并不app所以最后选了JSAPI支付,今天项目上线在上线之前一直在调试支付这块,下面把遇到的几处坑再次写一下。
先放上对接的代码中的一小段:

上面是微信返回给调用方的信息,红色标注的地方是自己遇到的一个比较坑的地方,为什么说坑是因为在此之前以为只需要把统一下单接口返回的参数直接返回给页面,页面带着返回的参数进行唤起微信支付,这里页面用服务端给的参数唤起微信支付时一直报签名错误。

👆这个截图是页面的请求参数(重点来了),后面经过证实实际上是需要服务端拿到这些参数并且按照上图中黑色加粗字体进行签名并且返回,而且签名的字段一定要区分大小写(本人就在这里踩了跟头),另外说一下要完成整个JSAPI支付还有一个很大的前提就是先要为授权,因为JSAPI支付请求参数中有一个openid,这个东西想必开发过微信的都知道一定要授权才能拿到。
今天先写到这,后续会总结接触过和写过的支付方式,并且会把微信授权一些列的开发流程和代码总结出来。(其实这些坑只要细心点还是很容易发现的,自己当时可能也是因为心态有点急没看清楚文档)