Spring的RestTemplate,支持SimpleClientHttpRequestFactory、OkHttp3ClientHttpRequestFactory和HttpComponentsClientHttpRequestFactory。
其中,SimpleClientHttpRequestFactory不支持定制client。
如果要访问HTTPS网站,会抛异常:
java.security.cert.CertificateException: No subject alternative names present; nested exception is javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative names present
使用OkHttp3ClientHttpRequestFactory,可以定制client:
final OkHttpClient client = new OkHttpClient.Builder()
.hostnameVerifier((host, session) -> true)
.build();