在上一篇文章里我们介绍了 httpclient 连接池的重试机制,在这里我们主要介绍连接池对于SSL的支持。
http连接的ssl支持
一般我们进行 http 请求的时候基本服务端都是 https 的,所以 httpclient 连接池也提供了ssl 的支持。那么对于 ssl 一般考虑如下两个项:
- ssl 证书的信任
ssl 证书中CN host name 的验证
SSL证书的信任
HttpClientBuilder 在构建 httpclient 的时候有方法 setSSLContext() 可以设置 ssl context 上下文对象,而在该对象里可以设置证书的信任策略管理对象 TrustManager ,不设置则为 java 默认 ssl 证书信任策略。如下代码举例自定义信任策略为信任所有证书(生产环境勿用):
复制代码
1
2
3public class TrustAllManager implements X509TrustManager{ @Override public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { //Empty implementation here } @Override public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException
最后
以上就是愤怒棒棒糖最近收集整理的关于httpclient 设置长连接_HttpComponents HttpClient连接池(8)SSL支持的全部内容,更多相关httpclient内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复