URLConnection setRequestProperty“Range”标头获取HTTP 416?卷曲有效

时间:2015-03-27 19:49:21

标签: java android

我需要使用“Range”标题继续使用我的Android应用程序下载部分下载的文件。

conn.setRequestProperty("Range", "bytes=" + this.downloadedBytes + "-");

当我将其记录到logcat时,我只看到了我的

conn.getRequestProperties().toString()
{Range=[bytes=3129-]}

我的服务器正在使用HTTP 416进行响应,无法满足范围。我在apache访问日志中看到了这个响应。我得到一个IOException(java.io.FileNotFoundException),这是我对它如何处理416的猜测,就像404一样。这是一个完全正常的响应,除了卷曲完全适用于同一个文件!

curl -I --header "Range: bytes=3129-` ...

我得到了预期的HTTP 200响应:

Last-Modified: Fri, 27 Mar 2015 15:26:59 GMT
Accept-Ranges: bytes
Content-Length: 1915
Cache-Control: max-age=0
Expires: Fri, 27 Mar 2015 19:17:33 GMT
Vary: Accept-Encoding
Content-Range: bytes 3129-5043/5044
Content-Type: text/html

我在android / java方面缺少什么?当curl工作正常时,请求是什么让apache服务回416?

0 个答案:

没有答案