Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何避免在commons httpclient中调用ChunkedInputStream.ExtainInputStream(this)_Java_Apache Commons Httpclient - Fatal编程技术网

Java 如何避免在commons httpclient中调用ChunkedInputStream.ExtainInputStream(this)

Java 如何避免在commons httpclient中调用ChunkedInputStream.ExtainInputStream(this),java,apache-commons-httpclient,Java,Apache Commons Httpclient,我有一个场景,通过添加标题“Range:bytes=a-”来随机访问http资源,我知道http请求的a值,但不知道结束边界。所以http请求发送并返回响应流。当我读取了我需要的信息(没有在流上读取)后,我必须关闭流,然后问题出现了:关闭调用必须读取该流中的所有数据,并且花费了太多的时间 所以,我猜httpclient中有一个套接字池,所以客户端必须读取所有数据以确保下一个响应流正确 那么,为了避免这个问题,keepalive disabled有效吗?或者任何其他方法都可以产生这种效果?使用co

我有一个场景,通过添加标题“Range:bytes=a-”来随机访问http资源,我知道http请求的a值,但不知道结束边界。所以http请求发送并返回响应流。当我读取了我需要的信息(没有在流上读取)后,我必须关闭流,然后问题出现了:关闭调用必须读取该流中的所有数据,并且花费了太多的时间

所以,我猜httpclient中有一个套接字池,所以客户端必须读取所有数据以确保下一个响应流正确


那么,为了避免这个问题,keepalive disabled有效吗?或者任何其他方法都可以产生这种效果?

使用commons httpclient无法避免这种情况。所以我改用了HttpURLConnection。

禁用keepalive应该可以。使用keepalive,必须将响应读取到末尾,以防在同一连接上有另一个请求。