从商户号下载的证书在生产环境可以,在测试环境报错,支付成功了退款失败,具体错误如下:
javax.net.ssl.SSLPeerUnverifiedException: Certificate for <api.mch.weixin.qq.com> doesn't match any of the subject alternative names: [payapp.weixin.qq.com, api.oz.weixin.qq.com, wx.gtimg.com, log.weixin.qq.com, api.pay.weixin.qq.com, api2.mch.weixin.qq.com, fraudhk.mch.weixin.qq.com, za.pay.wechat.com, fraudus.mch.weixin.qq.com, act.weixin.qq.com, fraud.mch.weixin.qq.com, apihk.mch.weixin.qq.com, mch.weixin.qq.com, api.mch.weixin.qq.com, apius.mch.weixin.qq.com, oz.weixin.qq.com, pay.weops.qq.com, action.weixin.qq.com, apitest.mch.weixin.qq.com, pay.weixin.qq.com]
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.verifyHostname(SSLConnectionSocketFactory.java:467)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:397)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:355)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
at org.apache.http.impl.conn.BasicHttpClientConnectionManager.connect(BasicHttpClientConnectionManager.java:323)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:381)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:237)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
已解决
谢邀,检查一下测试环境吧
这个应该是你本地测试环境造成的错误。建议检查环境。