计算 Content-Length 的公式为: Content-Length = 结束字节 - 开始字节 + 1

字节范围 bytes=10485760-15421231,计算 Content-Length 的公式为:

Content-Length = 结束字节 - 开始字节 + 1

数学计算:

开始字节:10485760
结束字节:15421231
Content-Length = 15421231 - 10485760 + 1 = 4935472
计算结果:Content-Length 应该是 4935472

这个值表示从第 10485760 字节到第 15421231 字节(包含两端)总共传输的字节数。

加1的原因涉及到字节范围的计数方式。

原因解释

字节范围的计算是基于包含性计数的

  • 当您指定 bytes=10485760-15421231 时,这个范围包含起始字节和结束字节
  • 从数学上看,这个范围内的字节总数应该是:结束位置 - 开始位置 + 1

举例说明

假设一个简单的例子:

  • 文件有10个字节:位置 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
  • 请求范围:bytes=3-7
  • 包含的字节:位置 3, 4, 5, 6, 7(共5个字节)

计算:

  • 7 - 3 = 4(这计算的是间隔数,不是实际字节数)
  • 7 - 3 + 1 = 5(这才是正确的字节数)

在您的具体例子中

  • 开始字节:10,485,760
  • 结束字节:15,421,231
  • 字节总数 = 15,421,231 - 10,485,760 + 1 = 4,935,472

这个加1确保了范围的两个端点都被包含在计数中,符合HTTP范围请求的标准规范。

posted @ 2026-03-04 22:47  龙陌  阅读(0)  评论(0)    收藏  举报