Closed ssdai123 closed 1 year ago
我是在商户平台下载证书了,也生成了证书,但是我没有拿到 商户证书序列号,按你们SDK文档描述,感觉代码上也有错误。 具体原因如下:
Config config = new RSAAutoCertificateConfig.Builder() .merchantId(merchantId) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3key) .build();
PrivacyEncryptor encryptor = config.createEncryptor(); String wechatPayCertificateSerialNumber = encryptor.getWechatpaySerial();
config 对象在初始化时候需要使用这个商户证书序列号,但是我拿不到,而你们提供的代码,获取又是从config里面获取。config 可能都会初始化失败。又何谈获取数据? 另外你们文档 PrivacyEncryptor 这个返回值的类型写的是 PrivateEncryptor ,而实际上根本就没提供这个类。
Config config = new RSAAutoCertificateConfig.Builder() .merchantId(merchantId) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3key) .build(); PrivacyEncryptor encryptor = config.createEncryptor(); String wechatPayCertificateSerialNumber = encryptor.getWechatpaySerial();
理论上这里获取 商户证书序列号 不应该从config 获取,而且获取 商户证书序列号 应该是在 定义config对象之前。
No response
win10
java8
com.github.wechatpay-apiv3 wechatpay-java 0.2.9
错误描述
我是在商户平台下载证书了,也生成了证书,但是我没有拿到 商户证书序列号,按你们SDK文档描述,感觉代码上也有错误。 具体原因如下:
PrivacyEncryptor encryptor = config.createEncryptor(); String wechatPayCertificateSerialNumber = encryptor.getWechatpaySerial();
config 对象在初始化时候需要使用这个商户证书序列号,但是我拿不到,而你们提供的代码,获取又是从config里面获取。config 可能都会初始化失败。又何谈获取数据? 另外你们文档 PrivacyEncryptor 这个返回值的类型写的是 PrivateEncryptor ,而实际上根本就没提供这个类。
重现bug的步骤
Config config = new RSAAutoCertificateConfig.Builder() .merchantId(merchantId) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3key) .build(); PrivacyEncryptor encryptor = config.createEncryptor(); String wechatPayCertificateSerialNumber = encryptor.getWechatpaySerial();
预期行为
理论上这里获取 商户证书序列号 不应该从config 获取,而且获取 商户证书序列号 应该是在 定义config对象之前。
导致错误的代码片段
No response
操作系统
win10
Java 版本
java8
wechatpay-java 版本
com.github.wechatpay-apiv3 wechatpay-java 0.2.9
其他信息