2017-02-16 145 views
1

我正在使用以下代码来发出Http请求。将setDefaultRequestConfig方法覆盖系统属性 - CloseableHttpClient

RequestConfig requestConfig = RequestConfig.custom() 
       .setConnectTimeout(10000) 
       .setConnectionRequestTimeout(10000) 
       .setSocketTimeout(300000) 
       .build(); 
CloseableHttpClient httpClient = HttpClientBuilder.create().useSystemProperties().setDefaultRequestConfig(requestConfig).build(); 

我简单的问题,将在方法setDefaultRequestConfig删除所有的系统属性,将只保留上面给出的属性或将只覆盖给定的性能,并保持其他系统性能,同时使HTTP请求。是

回答

1

该HttpClientBuilder可任选考虑系统性能如下

  • ssl.TrustManagerFactory.algorithm
  • javax.net.ssl.trustStoreType
  • javax.net.ssl.trustStore中
  • javax.net.ssl.trustStoreProvider
  • javax.net.ssl.trustStorePassword
  • ssl.KeyManagerFactory.a lgorithm
  • javax.net.ssl.keyStoreType
  • javax.net.ssl.keyStore
  • javax.net.ssl.keyStoreProvider
  • javax.net.ssl.keyStorePassword
  • https.protocols
  • https.cipherSuites
  • http.proxyHost
  • 把http.proxyPort
  • http.nonProxyHosts
  • http.keepAlive
  • http.maxConnections
  • http.agent

请求级别的配置与代理主机和端口的异常对任何这些设置没有影响。请求级别的代理设置将覆盖系统级别的代理设置。