这与: 我应该如何在 RESTful Web 服务中实现 COUNT 动词?、在 Rest 集合中进行分页 以及使用带有除字节之外的范围说明符的 HTTP 范围标头?
实际上我认为这里的 -1 评级 anwser 是正确的/sf/answers/100429101/
一般来说,答案说您可以使用引用 sec 3.12 的自定义单位
range-unit = bytes-unit | other-range-unit
bytes-unit = "bytes"
other-range-unit = token
Run Code Online (Sandbox Code Playgroud)
然而,当您阅读 HTTP 规范时,请注意生产规则如下:
Content-Range = "Content-Range" ":" content-range-spec
content-range-spec = byte-content-range-spec
byte-content-range-spec = bytes-unit SP
byte-range-resp-spec "/"
( instance-length | "*" )
Run Code Online (Sandbox Code Playgroud)
标头规范仅引用第 3.12 节中的字节单位,而不是范围单位,因此我认为实际上在这里使用自定义单位是违反规范的。
我错过了什么还是流行的答案错了?
编辑:由于这可能不清楚,我的问题的要点是:rfc2616 sec14.16 仅引用字节单位。它从未提及范围单元,因此范围单元的生成与内容范围无关,因此只能使用字节单元。
我认为这最好地解决了我的担忧,尽管我需要一些时间来理解它(而且我想确保措辞有问题)。
这反映了这样一个事实:显然,第一组语法规则是专门用于解析的,第二组是用于生成 HTTP 请求的
感谢埃尔加顿