增加请求工具超时时间

This commit is contained in:
egan
2019-08-04 17:17:43 +08:00
parent b9244395b3
commit b214c57635
2 changed files with 32 additions and 1 deletions

View File

@@ -60,6 +60,10 @@ public class HttpConfigStorage {
*/
private String charset;
private int socketTimeout;
private int connectTimeout;
/**
* http代理地址
* @return http代理地址
@@ -193,4 +197,20 @@ public class HttpConfigStorage {
public void setCharset(String charset) {
this.charset = charset;
}
public int getSocketTimeout() {
return socketTimeout;
}
public void setSocketTimeout(int socketTimeout) {
this.socketTimeout = socketTimeout;
}
public int getConnectTimeout() {
return connectTimeout;
}
public void setConnectTimeout(int connectTimeout) {
this.connectTimeout = connectTimeout;
}
}

View File

@@ -10,6 +10,7 @@ import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.config.Registry;
import org.apache.http.config.RegistryBuilder;
@@ -43,7 +44,7 @@ import java.util.Map;
*/
public class HttpRequestTemplate {
protected final Log LOG = LogFactory.getLog(HttpRequestTemplate.class);
protected static final Log LOG = LogFactory.getLog(HttpRequestTemplate.class);
protected CloseableHttpClient httpClient;
@@ -75,6 +76,7 @@ public class HttpRequestTemplate {
//设置httpclient的SSLSocketFactory
.setSSLSocketFactory(createSSL(configStorage))
.setConnectionManager(connectionManager(configStorage))
.setDefaultRequestConfig(createRequestConfig(configStorage))
.build();
if (null == connectionManager) {
return this.httpClient = httpClient;
@@ -84,6 +86,15 @@ public class HttpRequestTemplate {
}
private RequestConfig createRequestConfig(HttpConfigStorage configStorage) {
RequestConfig requestConfig = RequestConfig.custom()
.setSocketTimeout(configStorage.getSocketTimeout())
.setConnectTimeout(configStorage.getConnectTimeout())
// .setConnectionRequestTimeout(1000)
.build();
return requestConfig;
}
/**
* 初始化
* @param configStorage 请求配置