gpt4 book ai didi

http - 解析 HTTP header - 编码问题

转载 作者:可可西里 更新时间:2023-11-01 17:03:44 25 4
gpt4 key购买 nike

我正在使用 C++ 编写一个小型 HTTP 服务器(只是为了好玩)。

当收到来自客户端的请求时,我应该担心 HTTP header 的字符集吗?是否保证它们都仅由一个字节的 ASCII 字符组成?

最佳答案

是否保证它们都只包含一个字节的 ASCII 字符?

没有。 HTTP 使用 TCP,因此可以传输 >= 128 的八位字节。

HTTP 是否允许非 ASCII 字符?

是的。请参阅 ABNF 的字段内容 ( RFC 2616, Section 4.2 ) 和带引号的字符串 ( RFC 2616, Section 2.2 )。

HTTP 是否定义编码?

或多或少,通过声明非 ISO-8859-1 字符需要额外的编码层(同样来自 2.2):

The TEXT rule is only used for descriptive field contents and values that are not intended to be interpreted by the message parser. Words of *TEXT MAY contain characters from character sets other than ISO-8859-1 [22] only when encoded according to the rules of RFC 2047 [14].

这在实践中使用了吗?

是的。例如,在 Content-Disposition 中。

这是个好主意吗?

不,因为许多接受者和中间人都弄错了。

关于http - 解析 HTTP header - 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7854568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com