我需要将这 3 个 pem 文件(
ca.pem
、key.pem
和 cert.pem
)添加到我的 http 客户端,以便访问客户端的服务。
如何让这些与我现有的 httpclient 一起工作? 任何帮助将不胜感激。
谢谢。
File caFile = new File(getClass().getResource("/certs/ca.pem").getPath());
File keyFile = new File(getClass().getResource("/certs/key.pem").getPath());
File certFile = new File(getClass().getResource("/certs/cert.pem").getPath());
SSLContext sslContext = new SSLContextBuilder()
.loadTrustMaterial(null, ( certificate, authType ) -> true).build();
CloseableHttpClient httpClient = HttpClients.custom()
.setSSLContext(sslContext)
.setSSLHostnameVerifier(new NoopHostnameVerifier())
.addInterceptorFirst((HttpRequestInterceptor) ( httpRequest, httpContext ) -> {
httpRequest.setHeader("Content-Type", "application/xml");
})
.build();
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setHttpClient(httpClient);