Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Http 对于非文本媒体类型,发送带有内容类型标头的字符集参数是否绝对错误?_Http_Http Headers_Content Type - Fatal编程技术网

Http 对于非文本媒体类型,发送带有内容类型标头的字符集参数是否绝对错误?

Http 对于非文本媒体类型,发送带有内容类型标头的字符集参数是否绝对错误?,http,http-headers,content-type,Http,Http Headers,Content Type,我已经找到了两个软件之间的一个bug,其中一个正在发送标题 Content-Type: application/x-bittorrent; charset=utf-8 另一个错误地处理了这个问题,但是如果删除了charset参数,则正确地处理了它。我需要知道为哪个软件编写补丁 根据报告: 使用HTTP传输的文本类型的文档(如text/html、text/plain等)可以在HTTP头中发送字符集参数,以指定文档的字符编码 这意味着不是文本类型的文档不应该发送这个标题,我认为。然而,RFC 20

我已经找到了两个软件之间的一个bug,其中一个正在发送标题

Content-Type: application/x-bittorrent; charset=utf-8
另一个错误地处理了这个问题,但是如果删除了charset参数,则正确地处理了它。我需要知道为哪个软件编写补丁

根据报告:

使用HTTP传输的文本类型的文档(如text/html、text/plain等)可以在HTTP头中发送字符集参数,以指定文档的字符编码

这意味着不是文本类型的文档不应该发送这个标题,我认为。然而,RFC 2068规定:

“字符集”参数与某些媒体类型一起使用,以定义数据的字符集(第3.4节)

我在规范中找不到向除文本以外的媒体类型添加字符集参数不正确的地方,因此我的问题是:发送此标头的软件是否不正确,或者使用此标头的软件是否不正确?

(1)如果是RFC 2616,则为相关规范,而不是2068

(2) HTTP规范是正确的,这取决于媒体类型。例如,您可以为application/xml发送一个字符集参数


(3) 不知道应用程序/x-bittorrent-它有规范吗?

我认为为文本/*媒体类型以外的任何类型添加字符集参数是不正确的,因为规范只允许为该类型添加字符集。

哦,请阅读错误的规范!但在这个问题上他们是一样的。bittorrent文件格式确实有一个规范(可能不是官方规范),但我想知道任何非文本媒体类型的更一般情况。我想你的第二点是我要寻找的答案,但它是在任何地方定义的,哪些类型可以有字符集,还是全部都有?这取决于媒体类型,例如RFC 3023指定应用程序/xml。我发现第二个软件在消费端“不正确”地处理它,所以我倾向于将字符集包含在文本以外的类型中是不正确的。W3C语言可能有意这样做,特别是如果您将其视为证明规则的例外情况。但我不确定。请给我指出一个权威规范,该规范禁止非文本类型上的字符集。