当我在 HttpRequest 或任何输入流中设置字节范围时,我的心理挑战是,选择下载的间隔是多少?关闭间隔[开始,结束]或左关闭,右开[开始,结束]?!
答案 0 :(得分:2)
查看HTTP specification, chapter 14: Header Field Definitions:
14.35范围
14.35.1字节范围
byte-range-spec中的first-byte-pos值给出了一个范围内第一个字节的字节偏移量。 last-byte-pos值给出范围中最后一个字节的字节偏移量;也就是说,指定的字节位置是包含的。字节偏移从零开始。
这些例子非常具有描述性:
字节范围说明符值的示例(假设实体主体长度为
10000
):
- 前500个字节(字节偏移0-499,包括0和99):bytes = 0-499
- 第二个500字节(字节偏移500-999,包括端点):bytes = 500-999
- 最后500个字节(字节偏移9500-9999,包括端点):bytes = -500
- 或字节= 9500 -
简而言之:间隔是封闭的(包括),下载的字节数是last - first + 1
。