收藏
回答

v3微信商圈支付回调验签失败?

接口验签使用的微信支付提供的官方maven依赖
<dependency>
    <groupId>com.github.wechatpay-apiv3</groupId>
    <artifactId>wechatpay-apache-httpclient</artifactId>
    <version>0.2.1</version>
</dependency>


Verifier verifier = new AutoUpdateCertificatesVerifier(credentials, apiV3Key);
String signatureStr = new StringBuilder().append(request.getHeader("Wechatpay-Timestamp")).append("\n").append(request.getHeader("Wechatpay-Nonce")).append("\n").append(requestBody).append("\n").toString();
if (!verifier.verify(serialNo, signatureStr.getBytes("UTF-8"), request.getHeader("Wechatpay-Signature"))) {
    return WxNotifyResponse.error("验证签名失败");
}


验证方法一直失败,平台证书是可以获得到的, 但是到验签这一步一直失败

header参数获取没问题, requestBody接受参数也没问题, 可以正常解密出业务参数, 业务流程也可以跑通

但是一直卡在验证这,又看不出问题来源?难道构造验签串的时候和requestBody json串的字段排列有关系?

或者还有其他什么原因呢?麻烦大佬们解答下

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

3 个回答

登录 后发表内容
问题标签