WxPayConfig使用setPrivateKeyString设置秘钥串时,会报“v3请求构造异常”问题

问题:使用设置了privateKeyString之后,先Base64解码转为InputStream,在PemUtils中,使用toString方法转为字符串的时候,是转不回来的,所以会报错。
解决:只需要在loadConfigInputStream方法中,将字符串转为byte[]数组即可。在PemUtils中,toString转为原Base64串,这时候去掉begin和end,再使用Base64解码加载为PrivateKey即可。

Signed-off-by: everythingok <877134286@qq.com>
This commit is contained in:
everythingok 2024-03-22 14:51:03 +00:00 committed by Gitee
parent ccf23a8668
commit 838a8200d6
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -322,7 +322,7 @@ public class WxPayConfig {
if (configContent != null) {
inputStream = new ByteArrayInputStream(configContent);
} else if (StringUtils.isNotEmpty(configString)) {
configContent = Base64.getDecoder().decode(configString);
configContent = configString.getBytes(StandardCharsets.UTF_8);
inputStream = new ByteArrayInputStream(configContent);
} else {
if (StringUtils.isBlank(configPath)) {