Encoding HTTP接受编码并发送未编码的数据

Encoding HTTP接受编码并发送未编码的数据,encoding,http-headers,Encoding,Http Headers,我正在构建一个用于压缩HTTP输出的模块。在阅读这篇文章时,我没有在以下几点上找到明确的区别: 接受编码: 是否应将其视为与接受编码相同:还是视为不存在标题? 或者,如果我不支持gzip,但我得到了如下标题: 接受编码:gzip 我应该返回406错误还是只返回未编码的数据? 编辑: 我已经看过几遍说明书了。它提到了我的第一个案例,但没有定义服务器的行为应该是什么 我是否应该将此情况视为标头不存在?或者我应该返回406错误,因为给定字段值(“”不是有效的编码),无法对某个内容进行编码。中写入了所有

我正在构建一个用于压缩HTTP输出的模块。在阅读这篇文章时,我没有在以下几点上找到明确的区别:

接受编码:

是否应将其视为与接受编码相同:还是视为不存在标题?

或者,如果我不支持gzip,但我得到了如下标题:

接受编码:gzip

我应该返回406错误还是只返回未编码的数据?

编辑:

我已经看过几遍说明书了。它提到了我的第一个案例,但没有定义服务器的行为应该是什么


我是否应该将此情况视为标头不存在?或者我应该返回406错误,因为给定字段值(“”不是有效的编码),无法对某个内容进行编码。

中写入了所有内容:

接受编码字段中的特殊“*”符号与任何 标题中未明确列出的可用内容编码 场

如果请求中存在接受编码字段,并且根据接受编码标头,服务器无法发送可接受的响应,则服务器应发送带有406(不可接受)状态代码的错误响应

编辑:

如果接受编码字段值为空,则只有“标识” 编码是可以接受的

在这种情况下,如果“标识”是可用的内容编码之一,那么服务器应该使用“标识”内容编码,除非它有其他信息表明不同的内容编码对客户端有意义

身份
默认(身份)编码;不使用任何转换。此内容编码仅在接受编码头中使用,不应在内容编码头中使用


我想你没有领会我的意思。如果我有一个接受编码字段,但它是空的,这是像*符号一样处理的还是我应该返回406错误?
如果我有一个接受编码字段,但它是空的
。这还不清楚吗?我认为规范没有规定…对不起,你是对的,太晚了。。。但是有一些关于“身份”编码的文字,我编辑我的回答什么是“身份”编码?这是否意味着文件最初没有任何更改?我认为这是服务器默认值,可以在Web服务器的配置中设置(例如apache)