请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

怎么在best-pay项目中找不到微信或支付宝的商户证书文件

师兄,下午好!

对于微信退款或支付宝退款中都涉及到商户证书文件,对于证书文件,但是我怎么找遍了你sdk的best-pay项目,都没有找到对应的商户证证书文件,请问商户证书你是放在哪个目录下面呢? 请告知下,谢谢!

/**
* 商户证书路径
*/
private String keyPath;

/**
 * 证书内容
 */
private SSLContext sslContext;

/**
 * 初始化证书
 * @return
 */
public SSLContext initSSLContext() {
    FileInputStream inputStream = null;
    try {
        inputStream = new FileInputStream(new File(this.keyPath));
    } catch (IOException e) {
        throw new RuntimeException("读取微信商户证书文件出错", e);
    }

    try {
        KeyStore keystore = KeyStore.getInstance("PKCS12");
        char[] partnerId2charArray = mchId.toCharArray();
        keystore.load(inputStream, partnerId2charArray);
        this.sslContext = SSLContexts.custom().loadKeyMaterial(keystore, partnerId2charArray).build();
        return this.sslContext;
    } catch (Exception e) {
        throw new RuntimeException("证书文件有问题,请核实!", e);
    } finally {
        IOUtils.closeQuietly(inputStream);
    }
}

正在回答 回答被采纳积分+3

1回答

提问者 网络时空 2020-04-22 13:56:26

我在best-pay-demo项目的application-dev.yml文件中找到如下配置

wechat:
  mpAppId: wxd898xxxx
  mchId: 1483xxxx
  mchKey: C5245D70xxxxx
  keyPath: /var/weixin_cert/wxpay.p12
  notifyUrl: http://xxx.com/notify
  miniAppId: wxxxxxxxxxxx6bf9b
  miniAppSecret: xxbc6xxxxxxxxxxxxxx9c49d
  appAppId: wxxxxxxxxxxxx43b0


但是这个路径是在 /var/weixin_cert/wxpay.p12, 这个应该是在师兄对应的linux环境的目录下面,我现在在windowns环境没有这个证书文件,就测试不了退款流程啊!



0 回复 有任何疑惑可以回复我~
  • 你改成windows路径下的格式就行了,D:\\Downloads\\wxpay.p12
    回复 有任何疑惑可以回复我~ 2020-05-11 00:03:10
  • 提问者 网络时空 回复 廖师兄 #2
    我改成这个路径是可以,但关键是你项目中没有提供wxpay.12这个文件给我们测试啊! 
    回复 有任何疑惑可以回复我~ 2020-05-11 09:18:29
  • 廖师兄 回复 提问者 网络时空 #3
    这门课程没有退款的内容,也不提供商户密钥文件。
    回复 有任何疑惑可以回复我~ 2020-05-11 17:50:27
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信