Skip to content

Commit 98329b1

Browse files
authored
🐛 #3640 【微信支付】修复使用连接池后SSL客户端证书未正确发送导致退款接口报错的问题
1 parent db85c0a commit 98329b1

File tree

1 file changed

+18
-1
lines changed
  • weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config

1 file changed

+18
-1
lines changed

weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@
1818
import org.apache.http.auth.AuthScope;
1919
import org.apache.http.auth.UsernamePasswordCredentials;
2020
import org.apache.http.client.CredentialsProvider;
21+
import org.apache.http.config.Registry;
22+
import org.apache.http.config.RegistryBuilder;
23+
import org.apache.http.conn.socket.ConnectionSocketFactory;
24+
import org.apache.http.conn.socket.PlainConnectionSocketFactory;
2125
import org.apache.http.impl.client.BasicCredentialsProvider;
2226
import org.apache.http.impl.client.CloseableHttpClient;
2327
import org.apache.http.impl.client.HttpClients;
@@ -579,7 +583,20 @@ public CloseableHttpClient initSslHttpClient() throws WxPayException {
579583
}
580584

581585
// 创建支持SSL的连接池管理器
582-
PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
586+
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(
587+
sslContext,
588+
new DefaultHostnameVerifier()
589+
);
590+
591+
Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder
592+
.<ConnectionSocketFactory>create()
593+
.register("https", sslsf)
594+
.register("http", PlainConnectionSocketFactory.getSocketFactory())
595+
.build();
596+
PoolingHttpClientConnectionManager connectionManager =
597+
new PoolingHttpClientConnectionManager(socketFactoryRegistry);
598+
599+
// PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
583600
connectionManager.setMaxTotal(this.maxConnTotal);
584601
connectionManager.setDefaultMaxPerRoute(this.maxConnPerRoute);
585602

0 commit comments

Comments
 (0)