1

我试图弄清楚 GA 在保存 cookie 时使用什么编码。例如,我可以在设置 utm_source 参数时使用非西方字符,它们在 GA 报告中显示得很好。但是,如果我查看 __utmz cookie,它与 utm_source 参数的值不匹配,而是似乎以某种方式编码,我知道有 URL 编码,但这是不同的。

例子:

1) 访问 www.example.com?utm_source=ХЦЧШЩЬЫЪЭЮЯ

2) 查看cookies。__utmz cookie 保存给 utm_source 参数的任何值。它包含值 ХЦЧШЩЬЫЪÐЮЯ 似乎已编码。

3)点击网站然后查看GA报告。您看到ХЦЧШЩЬЫЪЭЮЯ是访问源,这是正确的。

我正在尝试编写一些 JavaScript 来读取 __utmz cookie 并将其保存在 Google App Engine Datastore 中,然后成功地将其显示在 HTML 页面中。我尝试了所有类型的编码(utf-8)解码(utf-8)解决方案,但似乎没有任何效果。我认为这是因为我没有设置 cookie 时使用的原始编码。

4

1 回答 1

2

使用的编码是 UTF-8。当 ХЦЧШЩЬЫЪЭЮЯ 是 UTF-8 编码然后 UTF-8 编码值的字节显示为好像它们是 windows-1252 编码时,你会得到 ХЦЧШЩЬЫЪÐЮЯ . 例如,第一个字符 X,西里尔大写字母 ha,是 U+0425,UTF-8 编码时是字节 0xD0 0xA5。当这些字节被解释为 windows-1252(或 ISO-8859-1)编码的字符数据时,它们的意思是 U+00D0 U+00A5,即 Ð¥。

于 2012-10-11T04:14:53.957 回答