java – Spring库中的REST(RestTemplate)是否支持HTTPS协议?
发布时间:2020-12-14 05:26:17 所属栏目:Java 来源:网络整理
导读:我试图通过HTTPS协议连接到Web服务器,但是response.getBody()返回null并且必须返回一个 JSON数组. statusCode为200,标头包含正确的信息,只有body为null.我为此使用标准的Spring RestTemplate API(postForEntity()).也许为了做到这一点我必须使用一些特殊的Sp
我试图通过HTTPS协议连接到Web服务器,但是response.getBody()返回null并且必须返回一个
JSON数组. statusCode为200,标头包含正确的信息,只有body为null.我为此使用标准的Spring RestTemplate API(postForEntity()).也许为了做到这一点我必须使用一些特殊的Sping API?不幸的是,我在Spring REST文档中找不到关于HTTPS支持和SSL /’TLS’证书的信息(这是相当有限的).
解决方法
您可以使用HttpComponentsClientHttpRequestFactory配置RestTemplate,例如:
<bean id="httpComponentsClientHttpRequestFactory" class="org.springframework.http.client.HttpComponentsClientHttpRequestFactory"/> <bean id="restTemplate" class="org.springframework.web.client.RestTemplate"> <constructor-arg ref="httpComponentsClientHttpRequestFactory"/> </bean> 这使得RestTemplate可以使用底线下的Apache HttpComponents HttpClient,这绝对支持SSL. 它看起来像HttpComponentsClientHttpRequestFactory提供的HttpClient支持SSL开箱即用,所以可能几乎没有你需要的配置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |