收藏
回答

微信支付公钥模式JAVA-SDK接入报错,这是什么问题?

        // 使用微信支付公钥的RSA配置
        Config config =
                new RSAPublicKeyConfig.Builder()
                        .merchantId(merchantId)
                        .privateKeyFromPath(privateKeyPath)
                        .publicKeyFromPath(publicKeyPath)
                        .publicKeyId(publicKeyId)
                        .merchantSerialNumber(merchantSerialNumber)
                        .apiV3Key(apiV3Key)
                        .build();

我在.publicKeyFromPath(publicKeyPath)这行报错:
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.wechat.pay.java.core.Config]: Factory method 'wechatPayConfigBuild' threw exception with message: Illegal base64 character 2d

我是在resources目录下,上传的apiclient_cert.pem文件,publicKeyPath的路径就是该文件的路径。请问这报错是什么问题?publicKeyFromPath这里读取的文件应该从哪获取


最后一次编辑于  2025-12-24
回答关注问题邀请回答
收藏

2 个回答

  • Memory (私信不回复)
    Memory (私信不回复)
    2025-12-24

    apiclient_cert是商户 API 证书而不是微信支付公钥

    2025-12-24
    有用
    回复 3
    • yqqqq
      yqqqq
      2025-12-24
      .publicKeyFromPath()
      这里要读取的公钥文件,是在商户平台哪里获取
      2025-12-24
      回复
    • Memory (私信不回复)
      Memory (私信不回复)
      发表于小程序端
      2025-12-24回复yqqqq

      商户账户中心 api 安全里面

      2025-12-24
      回复
    • yqqqq
      yqqqq
      2025-12-24
      好的谢谢,已经找到了
      2025-12-24
      回复
  • Memory (私信不回复)
    Memory (私信不回复)
    2025-12-24

    apiclient_cert是商户 API 证书而不是微信支付公钥

    2025-12-24
    有用
    回复 3
    • yqqqq
      yqqqq
      2025-12-24
      .publicKeyFromPath()
      这里要读取的公钥文件,是在商户平台哪里获取
      2025-12-24
      回复
    • Memory (私信不回复)
      Memory (私信不回复)
      发表于小程序端
      2025-12-24回复yqqqq

      商户账户中心 api 安全里面

      2025-12-24
      回复
    • yqqqq
      yqqqq
      2025-12-24
      好的谢谢,已经找到了
      2025-12-24
      回复
登录 后发表内容