背景
微信支付SDK 0.3.x 版本, 當(dāng)配置多個商戶號的時候擎场,會存在一個商戶號失敗
解決方案
升級微信 支付的 SDK到0.4.X
方案依據(jù)
echatpay-apache-httpclient——UPGRADING.md
版本0.4.0
提供了支持多商戶號的定時更新平臺證書功能,不兼容版本0.3.0
几莽。推薦升級方式如下:
- 若你使用了
ScheduledUpdateCertificatesVerifier
迅办,請使用CertificatesManager
替換:
-verifier = new ScheduledUpdateCertificatesVerifier(
- new WechatPay2Credentials(merchantId, new PrivateKeySigner(merchantSerialNumber, merchantPrivateKey)),
- apiV3Key.getBytes(StandardCharsets.UTF_8));
+// 獲取證書管理器實例
+certificatesManager = CertificatesManager.getInstance();
+// 向證書管理器增加需要自動更新平臺證書的商戶信息
+certificatesManager.putMerchant(merchantId, new WechatPay2Credentials(merchantId,
+ new PrivateKeySigner(merchantSerialNumber, merchantPrivateKey)), apiV3Key.getBytes(StandardCharsets.UTF_8));
+// 從證書管理器中獲取verifier
+verifier = certificatesManager.getVerifier(merchantId);
- 若你使用了
getLatestCertificate
方法,請使用getValidCertificate
方法替換章蚣。