收藏
回答

java 使用官方sdk 微信支付调用统一下单接口V2的 一直返回签名错误

我debug看了一下 这个sdk执行了两遍 HMACSHA256加密算法的函数 第一遍用签名校验是正确的 第二遍不正确 返回的就是不签名错误

第一遍从WXPayUtil.generateSignature的方法里

这是对的签名

接下来还会走一遍HMACSHA256

我就很奇怪为什么会走到这个方法 转换csv格式?

然后这个方法的签名明显跟上面不一样了 校验签名工具校验这个签名发现是错误的跟源签名不一致

第一遍正确的data参数如下

这个data明显就跟第一次的data参数不一样

这个是封装的参数 跟着SDK走的 就很无语 求大佬解决! 整了一两天了 没解决 参数我检查过都是没有空格的 排查问题发现调用一遍wxpay.unifiedOrder统一下单接口会走两遍加密算法 第一遍验证是正确的 返回的是第二遍错误的信息

回答关注问题邀请回答
收藏

1 个回答

  • Memory
    Memory
    2021-11-05

    确认你的商户密钥是否正确

    2021-11-05
    有用
    回复
登录 后发表内容