如何重用httpclient连接来获取多个小文件

时间:2011-08-22 09:23:23

标签: java apache-commons-httpclient

我正在使用httpclient连续从服务器下载多个小文件。所以我想重用httpclient连接,以避免花费大量时间来分配新连接。

我已经有一些客户端代码尝试重用连接,并将现有连接的空闲超时设置为3分钟。

但是服务器的响应总是包含“Connection:close [\ r] [\ n]”,httpclient库在遇到这样的标题后立即释放连接。

如何让httpclient忽略来自服务器的响应,或者我发布的哪个标题可以让服务器不再返回这样的结束标题?

2 个答案:

答案 0 :(得分:4)

即使您设法忽略 Connection: close标题,我也不认为“违反”该指令是个好主意。

RFC说the following

  

HTTP / 1.1为发件人定义“关闭”连接选项   表示连接完成后将关闭   响应。例如,

   Connection: close
     

在请求或响应头字段中指示   连接不应被视为“持久性”(第8.1节)之后   当前的请求/响应已完成。

答案 1 :(得分:1)