当我编写HTTP/1.1服务器时,我遇到了处理多个范围请求的问题。
RFC 2616的第14.35.1节提供了一些示例,但没有明确说明服务器的行为。例如:
GET /some/resource HTTP/1.1
...
Range: bytes=200-400,100-300,500-600
...
我应该返回这个字节序列吗?还是合并所有范围,发送100-400,500-600
?或者发送中间的所有内容,100-600
?
更糟糕的是,在检查Content-Range
响应头(第14.16节)时,只返回一个范围,所以我想知道服务器如何响应第14.35.1节中的示例bytes=0-0,-1
!
我的服务器应该如何处理这样的请求?