<dependency>
<groupId>com.github.wechatpay-apiv3</groupId>
<artifactId>wechatpay-java</artifactId>
<version>0.2.9</version>
</dependency>
依据官方给的依赖包,以及实例代码,发现存在问题,现在不知道该怎么处理。
Config config = new RSAAutoCertificateConfig.Builder() .merchantId(merchantId) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3key) .build(); PrivacyEncryptor encryptor = config.createEncryptor(); String wechatPayCertificateSerialNumber = encryptor.getWechatpaySerial();
此处的证书序列号是由config 获取的。 而config的初始化由必须先给 证书序列号 ,这不是前后矛盾了? 证书序列号如果可以为null ,那么初始化时候假设能成功,那么 证书序列号 有什么用? 如果是必填,为撒由是在初始化以后才可以获取到。 假设可以填null ,也支持后面获取。那么是否应该有一个set 操作? 而且官方给的这个证书序列号获取的代码的返回值的类型也是错误的。
此处写的返回类型是 PrivateEncryptor, 实际上就没这个类。真正的返回类是 PrivacyEncryptor
微信文档写的不明不白,是想显得你们水平很高吗
官方的API sdk让人看不懂,真的有好好思考后再设计的吗?巨难用不说,很多配置参数也不标明从哪里获取。要么就前后矛盾
merchantSerialNumber 是API证书的序列号,不是平台证书的
通过接口参数就能看出微信代码规范一定做的很差,一个返回接口,字段啥类型都有,一会儿大驼峰一会儿小驼峰,一会儿下划线,都是些啥玩意儿,还TMD大厂,狗屎一坨
文档都不弄好,就发出来强制更新,真的微信真沙雕