mirror of
				https://gitee.com/binary/weixin-java-tools.git
				synced 2025-10-31 18:46:10 +08:00 
			
		
		
		
	#307 微信支付模块中增加http proxy设置的支持
This commit is contained in:
		| @ -54,7 +54,7 @@ public class WxPayServiceApacheHttpImpl extends WxPayServiceAbstractImpl { | ||||
|         .build()); | ||||
|  | ||||
|       if (StringUtils.isNotBlank(this.config.getHttpProxyHost()) | ||||
|         && StringUtils.isNotBlank(this.config.getHttpProxyUsername())) { | ||||
|         && this.config.getHttpProxyPort() > 0) { | ||||
|         // 使用代理服务器 需要用户认证的代理服务器 | ||||
|         CredentialsProvider provider = new BasicCredentialsProvider(); | ||||
|         provider.setCredentials( | ||||
|  | ||||
| @ -1,9 +1,13 @@ | ||||
| package com.github.binarywang.wxpay.service.impl; | ||||
|  | ||||
| import com.github.binarywang.wxpay.exception.WxPayException; | ||||
| import jodd.http.HttpConnectionProvider; | ||||
| import jodd.http.HttpRequest; | ||||
| import jodd.http.HttpResponse; | ||||
| import jodd.http.ProxyInfo; | ||||
| import jodd.http.ProxyInfo.ProxyType; | ||||
| import jodd.http.net.SSLSocketHttpConnectionProvider; | ||||
| import jodd.http.net.SocketHttpConnectionProvider; | ||||
| import org.apache.commons.lang3.StringUtils; | ||||
|  | ||||
| import javax.net.ssl.SSLContext; | ||||
| @ -31,7 +35,19 @@ public class WxPayServiceJoddHttpImpl extends WxPayServiceAbstractImpl { | ||||
|         if (null == sslContext) { | ||||
|           sslContext = this.getConfig().initSSLContext(); | ||||
|         } | ||||
|         request.withConnectionProvider(new SSLSocketHttpConnectionProvider(sslContext)); | ||||
|         final SSLSocketHttpConnectionProvider provider = new SSLSocketHttpConnectionProvider(sslContext); | ||||
|         request.withConnectionProvider(provider); | ||||
|       } | ||||
|  | ||||
|       if (StringUtils.isNotBlank(this.config.getHttpProxyHost()) && this.config.getHttpProxyPort() > 0) { | ||||
|         ProxyInfo httpProxy = new ProxyInfo(ProxyType.HTTP, this.config.getHttpProxyHost(), this.config.getHttpProxyPort(), | ||||
|           this.config.getHttpProxyUsername(), this.config.getHttpProxyPassword()); | ||||
|         HttpConnectionProvider provider = request.connectionProvider(); | ||||
|         if (null == provider) { | ||||
|           provider = new SocketHttpConnectionProvider(); | ||||
|         } | ||||
|         provider.useProxy(httpProxy); | ||||
|         request.withConnectionProvider(provider); | ||||
|       } | ||||
|  | ||||
|       String responseString = this.getResponseString(request.send()); | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Binary Wang
					Binary Wang