【发布时间】:2016-09-30 03:30:09
【问题描述】:
如果我使用 HttpAddRequestHeadersW 版本并附加 unicode 宽字符串,服务器是否识别字符集?哪一方负责字符集编码转换?服务器还是客户端?
【问题讨论】:
如果我使用 HttpAddRequestHeadersW 版本并附加 unicode 宽字符串,服务器是否识别字符集?哪一方负责字符集编码转换?服务器还是客户端?
【问题讨论】:
Windows 将首先将宽 Unicode 字符串转换为 iso-8859-1 编码。但是,几乎所有非 ASCII 字符都是不允许的,因此您必须对 UTF8 字符串进行 base64 编码,然后在客户端和服务器上进行自定义处理以使用它。
有关详细信息,请参阅此问题: How to send non-English unicode string using HTTP header?
【讨论】:
%E5 等)。双方都需要自定义处理,这意味着您可以使用任何可打印的 ASCII 编码