本文共 1055 字,大约阅读时间需要 3 分钟。
更多HttpClient4.5中文教程请查看目录:
===================================================
HttpClient代表HTTP请求执行的最基本约定。它没有强加限制或具体细节给请求执行过程,它保留了连接管理,状态管理,认证,重定向等处理细节的个人实现。使用额外的功能来装饰这个接口是非常容易的,比如设置响应体缓存。
HttpClient实现作为特殊目的的处理器或策略接口的门面,负责处理HTTP协议特定的方面,比如重定向处理,认证处理,为连接持久化做决定或者保持持续连接。这使得用户很容易使用自定义的实现来取代那些默认的实现。ConnectionKeepAliveStrategy keepAliveStrat = new DefaultConnectionKeepAliveStrategy() {@Overridepublic long getKeepAliveDuration(HttpResponse response,HttpContext context) { long keepAlive = super.getKeepAliveDuration(response, context); if (keepAlive == -1) { // 如果keep-alive的值内有被服务器明确设置,保持持续连接5秒 keepAlive = 5000; } return keepAlive; }};CloseableHttpClient httpclient = HttpClients.custom().setKeepAliveStrategy(keepAliveStrat).build();
当一个HttpClient实例不再需要时并且它不在连接管理器之内时,必须通过CloseableHttpClient#close()方法关闭。
CloseableHttpClient httpclient = HttpClients.createDefault();try { <...>} finally { httpclient.close();}
转载地址:http://unhgi.baihongyu.com/