httpsclientrequestfactory 设置tls版本
时间: 2023-05-10 11:50:12 浏览: 93
在使用Spring Framework进行HTTP通信时,可以使用HttpClientRequestFactory来创建HTTP客户端的请求工厂。如果要使用TLS协议来进行通信,可以通过设置HttpClientRequestFactory的SSL/TLS相关属性来设置所使用的TLS版本。以下是具体的设置方法:
首先,需要在配置文件中设置HttpClientBuilder:
```xml
<bean id="httpClientBuilder" class="org.apache.http.impl.client.HttpClientBuilder" factory-method="create"/>
```
然后,通过HttpClientBuilder来创建HttpClient:
```xml
<bean id="httpClient" class="org.apache.http.impl.client.CloseableHttpClient" factory-bean="httpClientBuilder" factory-method="build"/>
```
接下来,通过HttpClient创建HttpClientRequestFactory:
```xml
<bean id="httpRequestFactory" class="org.springframework.http.client.HttpComponentsClientHttpRequestFactory">
<constructor-arg ref="httpClient" />
<<property name="ReadTimeout" value="60000"/>>
</bean>
```
其中,property节点中的“ReadTimeout”用于设置超时时间,可以根据需要进行修改。
最后,需要设置TLS相关属性:
```xml
<bean id="tlsRequestFactory" class="org.springframework.http.client.HttpComponentsClientHttpRequestFactory">
<constructor-arg ref="httpClient" />
<property name="sslContext">
<bean class="org.apache.http.ssl.SSLContextBuilder" factory-method="create">
<constructor-arg value="TLSv1.2" />
</bean>
</property>
<property name="requestSentRetryEnabled" value="false" />
<property name="ReadTimeout" value="60000" />
</bean>
```
上述代码中的部分代码与前面相同,不同之处在于sslContext属性的设置。可以通过创建SSLContextBuilder来设置所需的TLS版本,如上述代码所示,设置为TLSv1.2。
最后,需要将所需的HttpClientRequestFactory设置为RestTemplate的请求工厂:
```xml
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
<property name="requestFactory" ref="tlsRequestFactory" />
</bean>
```
通过上述代码的配置,即可在使用Spring Framework进行HTTP通信时,设置所需的TLS版本。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)