【问题标题】:HTTP byte ranges and multipart/byteranges alternatives?HTTP 字节范围和多部分/字节范围替代方案?
【发布时间】:2013-10-10 07:52:16
【问题描述】:

rfc2616 (HTTP/1.1):

不得使用 multipart/byteranges 媒体类型。

对多个范围请求的响应,其结果是单个 范围,可以作为带有一个部分的多部分/字节范围媒体类型发送。

不能解码多部分/字节范围消息的客户端不得 在单个请求中请求多个字节范围。

如果我理解正确,单个请求中的多个范围可能会使用 multipart/byteranges 并且客户端必须能够对其进行解码或根本不应该请求它。

“MAY”是否暗示还有可以使用的多部分/字节范围的替代品?有吗?如果是这样,是否有请求它们的标头?

例如,服务器能否将所有字节范围连接成一个单独的部分响应?

【问题讨论】:

    标签: http range multipart rfc2616


    【解决方案1】:

    如果一个请求请求多个范围,并且服务器可以将请求的范围连接成一个连续的范围,那么响应可以:

    • multipart/byteranges 与单个 MIME 部分一起用于连接范围,其中该部分有自己的 Content-Range 标头。

    • 自行发送连接数据并包含顶级Content-Range 标头。

    【讨论】:

      【解决方案2】:

      就我在 2012 年的经验而言,我建议坚持第一个,即“不得使用 multipart/byteranges 媒体类型发送对单个范围请求的响应。”因为有些客户会窒息。

      【讨论】:

      • 也可以反过来 - 用于 Node 的 Electron Updater(如 2021-07-29)假定单范围响应无效并回退到请求文件的完整下载.
      猜你喜欢
      • 2022-11-10
      • 1970-01-01
      • 2022-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-08
      相关资源
      最近更新 更多