HTTP:当Range不受支持时,我应该如何响应"Range:bytes ="?

Joe*_*nsn 8 webserver http download range http-headers

Range: bytes=278528-如果Range不支持,带有标题字段的GET请求的正确响应是什么?

阅读HTTP标头定义(http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html)我认为我至少应该设置:Accept-Ranges: none,但它明确指出

客户端可以生成字节范围请求,而不会收到所涉及资源的此标头.

因此,如果客户请求范围,我应该:

Jos*_*Lee 9

你可以忽略它,正如规范所说.确切地说:

  • 如果您支持它,则返回状态代码206 Partial Content并包含正确的标题,如Content-Range.
  • 如果您不支持,则正常返回200 OK.

我没有测试过这个,但规格似乎很清楚.我已经看到了这项工作 - 如果服务器不支持Range标头,使用wget或curl恢复中断下载将从头开始正确重启.

  • 太糟糕了,客户也忽略了我忽略它.LG /摩托罗拉手机(OMXPlayer)上的Android MediaPlayer如果你返回一个200全身的话会崩溃:( (2认同)

Nem*_*emo 5

RFC2616第14.35.2节说:

服务器可以忽略Range标头.