fix:【pay 支付】微信支付 publicKeyContent 调整为非必填,兼容 https://t.zsxq.com/ODR5V、https://gitee.com/yudaocode/yudao-ui-admin-vue3/issues/ICUE53

This commit is contained in:
YunaiV
2025-10-02 10:23:57 +08:00
parent b07bc3d787
commit 4bc88e2930
2 changed files with 5 additions and 3 deletions

View File

@@ -68,8 +68,11 @@ public abstract class AbstractWxPayClient extends AbstractPayClient<WxPayClientC
payConfig.setKeyPath(FileUtils.createTempFile(Base64.decode(config.getKeyContent())).getPath()); payConfig.setKeyPath(FileUtils.createTempFile(Base64.decode(config.getKeyContent())).getPath());
} else if (Objects.equals(config.getApiVersion(), API_VERSION_V3)) { } else if (Objects.equals(config.getApiVersion(), API_VERSION_V3)) {
payConfig.setPrivateKeyPath(FileUtils.createTempFile(config.getPrivateKeyContent()).getPath()); payConfig.setPrivateKeyPath(FileUtils.createTempFile(config.getPrivateKeyContent()).getPath());
payConfig.setPublicKeyPath(FileUtils.createTempFile(config.getPublicKeyContent()).getPath()); // 参考 https://gitee.com/yudaocode/yudao-ui-admin-vue3/issues/ICUE53 和 https://t.zsxq.com/ODR5V
// 特殊:强制使用微信公用模式,避免灰度期间的问题!!! if (StrUtil.isNotBlank(config.getPublicKeyContent())) {
payConfig.setPrivateCertPath(FileUtils.createTempFile(Base64.decode(config.getPublicKeyContent())).getPath());
}
// 特殊:强制使用微信公钥模式,避免灰度期间的问题!!!
payConfig.setStrictlyNeedWechatPaySerial(true); payConfig.setStrictlyNeedWechatPaySerial(true);
} }

View File

@@ -81,7 +81,6 @@ public class WxPayClientConfig implements PayClientConfig {
/** /**
* pub_key.pem 证书文件的对应字符串 * pub_key.pem 证书文件的对应字符串
*/ */
@NotBlank(message = "pub_key.pem 不能为空", groups = V3.class)
private String publicKeyContent; private String publicKeyContent;
@NotBlank(message = "publicKeyId 不能为空", groups = V3.class) @NotBlank(message = "publicKeyId 不能为空", groups = V3.class)
private String publicKeyId; private String publicKeyId;