【发布时间】:2009-03-10 06:31:40
【问题描述】:
有人告诉我在放入 cookie 之前始终对 UTF-8 字符串进行 URL 编码。 因此,当 CGI 应用程序读取此 cookie 时,它必须对字符串进行 URL 解码以获取原始 UTF-8 字符串。
这是在 cookie 中处理 UTF-8 字符的正确方法吗?
有没有更好的方法来做到这一点?
【问题讨论】:
-
您使用什么语言?珀尔?蟒蛇?
有人告诉我在放入 cookie 之前始终对 UTF-8 字符串进行 URL 编码。 因此,当 CGI 应用程序读取此 cookie 时,它必须对字符串进行 URL 解码以获取原始 UTF-8 字符串。
这是在 cookie 中处理 UTF-8 字符的正确方法吗?
有没有更好的方法来做到这一点?
【问题讨论】:
没有一种标准方案可以将 Unicode 字符封装到 cookie 中。
对 UTF-8 表示进行 URL 编码无疑是一种常见且明智的做法,尤其是因为它可以很容易地从 JavaScript 读取为 Unicode 字符串(使用 decodeURIComponent)。但是,如果您愿意,没有理由不能选择其他方案。
【讨论】:
一般来说,这是最简单的方法,你可以做另一种二进制编码,不确定 base64 是否包含保留字符... %uXXXX 其中 XXXX 是十六进制 unicode 值是最合适的。
【讨论】: