: I/O error on POST request for “/xxxx/xxxx/xxxx”: Read timed out; nested exception is : Read timed out
1.首先本地重试,并没有发生超时的timeout。
2.联想到由于是https请求,可能由于https证书的问题,于是配置了信任所有证书。(代码放最后)
3.代码里配置了信任所有证书,响应就正常了。
@Bean
public RestTemplate restTemplate (RestTemplateBuilder builder) throws NoSuchAlgorithmException, KeyManagementException {
TrustManager[] trustAllCerts =new TrustManager[] {
new X509TrustManager() {
@Override
public .X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[0];
}
@Override
public void checkClientTrusted(
.X509Certificate[] certs, String authType) {
}
@Override
public void checkServerTrusted(
.X509Certificate[] certs, String authType) {
}
}
};
SSLContext sslContext =("SSL");
(null, trustAllCerts, new ());
CloseableHttpClient httpClient =()
.setSSLContext(sslContext)
.setSSLHostnameVerifier()
.build();
HttpComponentsClientHttpRequestFactory customRequestFactory =new HttpComponentsClientHttpRequestFactory();
(httpClient);
RestTemplate restTemplate = (() ->customRequestFactory)
.build();
return ();