使用Spring RestTemplate访问Https Rest服务

谁能提供给我一个代码示例,以使用Spring Rest模板访问通过https保护的REST服务URL。

我有证书,用户名和密码。服务器端使用了基本身份验证,我想创建一个可以使用提供的证书,用户名和密码(如果需要)连接到该服务器的客户端。

回答:

KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());

keyStore.load(new FileInputStream(new File(keyStoreFile)),

keyStorePassword.toCharArray());

SSLConnectionSocketFactory socketFactory = new SSLConnectionSocketFactory(

new SSLContextBuilder()

.loadTrustMaterial(null, new TrustSelfSignedStrategy())

.loadKeyMaterial(keyStore, keyStorePassword.toCharArray())

.build(),

NoopHostnameVerifier.INSTANCE);

HttpClient httpClient = HttpClients.custom().setSSLSocketFactory(

socketFactory).build();

ClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(

httpClient);

RestTemplate restTemplate = new RestTemplate(requestFactory);

MyRecord record = restTemplate.getForObject(uri, MyRecord.class);

LOG.debug(record.toString());

以上是 使用Spring RestTemplate访问Https Rest服务 的全部内容, 来源链接: utcz.com/qa/435627.html

回到顶部