微信支付 API v3 回调通知 签名验证 PHPdemo有嘛?
详细问题介绍:
将微信回调接收到的 wechatpay-signature 字段验签,验签失败,后面打断点发现
将微信回调接收到的 wechatpay-signature 字段用base64_decode解码后得到的乱码,
这有什么问题嘛,回调验签验不过,问题紧急!!!
还有确认用的证书是平台证书,也是最新的。
解决方法:
问题解决了!!!
我的问题是因为用了框架的获取body里参数的方法,导致body参数里的字段顺序与微信传来的不一致,(是我看了一篇java实现的文章受到的启发),这里强烈建议使用编程语言原生获取参数的方式获取,我们php是 file_get_contents("php://input");
注意:对微信签名base64_decode解码后乱码,这里并不是微信的签名有错,本来就是这样的
反正排除了证书,序列号之类的问题,就要看参数的问题
注释调的是我原来获取参数,并且构建签名串的方式,现在采用原生的方式就校验通过了
希望能帮到大家。
以上就是如何解决微信支付API v3回调通知出现乱码问题的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。