【问题标题】:HTTP multirange requests - headers in responseHTTP 多范围请求 - 响应的标头
【发布时间】:2023-03-08 10:30:01
【问题描述】:

我正在使用这样的多范围 http 请求 “卷曲--范围 1-2,2-3 http://some.url” 反应是这样的

--000000000000000030705 内容类型:文本/html; charset=utf-8 内容范围:字节 1-2/13882393

我 --00000000000000030705 内容类型:文本/html; charset=utf-8 内容范围:字节 2-3/13882393

乐 --00000000000000030705--

如何从响应中删除字段 Content-Type 和 Content-Range 以从服务器获取原始数据(无需在客户端解析)? 我想得到这样的回应: “我”

非常感谢!

【问题讨论】:

    标签: http curl httprequest


    【解决方案1】:

    你可能做不到。服务器符合规范,如by the RFC 所述。

    如果正在传输多个部分,则生成 206 响应的服务器必须生成一个“multipart/byteranges”有效负载,如附录 A 中所定义,以及一个包含 multipart/byteranges 媒体类型及其所需边界的 Content-Type 标头字段范围。为避免与单部分响应混淆,服务器不得在多部分响应的 HTTP 标头部分中生成 Content-Range 标头字段(该字段将在每个部分中发送)。

    在连续多范围的情况下,服务器可以发送没有多部分边界的响应,但这是可选的。

    当请求多个范围时,服务器可以合并任何重叠的范围,或者由小于发送多个部分的开销的间隙分隔的范围,而不管相应字节范围的顺序如何- spec 出现在接收到的 Range 标头字段中。由于多部分/字节范围有效负载部分之间的典型开销约为 80 字节,具体取决于所选表示的媒体类型和所选边界参数长度,传输许多小的不相交部分的效率可能低于传输整个选定的部分表示。

    在多部分负载中每个正文部分的标头区域内,服务器必须生成与包含在该正文部分中的范围相对应的 Content-Range 标头字段。如果所选表示在 200 (OK) 响应中具有 Content-Type 标头字段,则服务器应在每个正文部分的标头区域中生成相同的 Content-Type 字段。例如:

    假设您的服务器符合规范,发送单个范围 1-3 您将得到一个主体。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 1970-01-01
      • 2014-12-18
      • 2013-03-27
      • 1970-01-01
      • 2021-07-08
      • 1970-01-01
      相关资源
      最近更新 更多