使用POST方法以块的形式发送文件时,是否使用适当的HTTP Content-Range标头?

时间:2011-09-18 20:16:26

标签: http http-headers http-content-range

我正在开发一个现有的Silverlight文件上传器,它将文件分成多个块并使用多个HTTP请求传输文件。

目前,它发送查询字符串的开始和总字节信息,但作为学习练习,我想使用更基于标准的方法。

我实际上在实现提供内容的端点时使用了HTTP Content-Range标头。在将内容从客户端发布到服务器时,此标题是否也适用?

2 个答案:

答案 0 :(得分:1)

RFC 2616 (HTTP 1.1), Section 14首先说明:

  

对于实体标题字段,发件人和收件人都参考   客户端或服务器,取决于谁发送和谁接收   实体。

除此之外,定义Content-Range标头的Section 14.16似乎不包含任何限制其用于请求或响应的语言。

答案 1 :(得分:1)

可能不是,至少截至2014年(原始答案是2011年)。

更新后的HTTP 1.1规范rfc7231 (4.3.3),说明了有效的POST响应:

  

源服务器通过选择a来指示响应语义      适当的状态代码取决于处理结果      POST请求;几乎所有由此定义的状态代码      可能会在对POST的响应中收到规范(例外情况      是206(部分内容),304(未修改)和 416(范围不是      符合要求))。

鉴于此语言已明确添加到更新的规范中,我怀疑作者是否打算将Content-Range标头与POST方法一起使用。