【发布时间】:2011-10-11 14:16:38
【问题描述】:
可能重复:
What's the correct encoding of HTTP get request strings?
我的一个客户发给我,他们要求将 HTTP 请求编码为 ISO-8859-2,
所以我想知道 HTTP 通信使用什么字符集,以及这个请求在技术上是否正确。
【问题讨论】:
标签: http encoding character-encoding get request
可能重复:
What's the correct encoding of HTTP get request strings?
我的一个客户发给我,他们要求将 HTTP 请求编码为 ISO-8859-2,
所以我想知道 HTTP 通信使用什么字符集,以及这个请求在技术上是否正确。
【问题讨论】:
标签: http encoding character-encoding get request
这取决于。 “智能”服务器将始终使用百分比转义的 UTF-8,但您不能依赖它。
【讨论】:
纯 ASCII 是 HTTP 标头中允许的全部内容。但是,就 HTTP 而言,任何内容都在 POST 的请求正文中。标题和正文总是用空行分隔。一组标题通常会识别内容/正文的格式。响应的工作方式相同。但是,HTML 对 通常 在 POST 中的内容有一些附加规则。
编辑:抱歉,我错过了您标题中的“GET”一词。在您的问题正文中复制它可能会很好。
无论如何,我相信我说在任何 HTTP 请求、GET 或 POST 的标头中只允许使用 ASCII (ANSI X3.4-1986) 是正确的。所以不,ISO-8859-2 请求不是严格有效的 HTTP。也就是说,如果您在这里真正要求的是,可能有一种方法可以转义查询字符串中所需的特殊字符。
【讨论】: