Cookies 存储在cookie中的Google Analytics ID未定义
我们正在通过谷歌标签管理器安装谷歌分析。 我们有一个定制变量,它应该接受GA客户id,并将其发送给我们的GA。 变量定义如下:Cookies 存储在cookie中的Google Analytics ID未定义,cookies,google-analytics,google-tag-manager,Cookies,Google Analytics,Google Tag Manager,我们正在通过谷歌标签管理器安装谷歌分析。 我们有一个定制变量,它应该接受GA客户id,并将其发送给我们的GA。 变量定义如下: function() { try { var cookie = {{GA_ID_Cookie}}.split("."); return cookie[2] + "." + cookie[3]; } catch(e) { return 'N/A'; } } 而{{GA_ID_Cookie}是名为“\u GA”的第一方Cookie变量。
function() {
try {
var cookie = {{GA_ID_Cookie}}.split(".");
return cookie[2] + "." + cookie[3];
} catch(e) {
return 'N/A';
}
}
而{{GA_ID_Cookie}
是名为“\u GA
”的第一方Cookie变量。
在大多数情况下,该值都有效,但在某些情况下,GA\u ID\u Cookie
未定义(并引发异常)
这在所有浏览器中都会发生。有足够多的用户“不适用”,所以这不是关于禁用cookies的问题
GTM在页面视图事件上安装GA;它使用这个有问题的变量作为自定义维度
我的问题是为什么ga id为空,我们如何克服这个问题并以其他方式获取id。很可能在生成cookie之前就触发了标记。
尝试将页面视图更改为窗口加载。清除cookie并重试,它应该可以工作 正如Ashley所指出的您可能面临一种竞争条件,即在GA设置cookie之前尝试访问cookie 请注意,从识别用户的角度来看,GA cookie ID包含一些不感兴趣的信息,即应该删除的版本 如果您的GA cookie如下所示:
_ga=GA1.2.1033501218.1368477899;
那么你感兴趣的部分是:
1033501218.1368477899
要通过浏览器检索客户端ID,官方方式如下:
如果您使用的是GTM,则需要创建一个任务:如果希望通过服务器检索客户端ID,则只需使用您选择的HTTP库解析
cookie
HTTP头(下面的示例是从request to stackoverflow网站),并去掉表示cookie版本的前导GA\d\.\d\.
模式
cookie: prov=f67bae3b-f99c-2f22-84fc-7c2a62862f3d; _ga=GA1.2.1380536973.1571212618; ...
function() {
return function(model) {
return model.get('clientId');
};
}
cookie: prov=f67bae3b-f99c-2f22-84fc-7c2a62862f3d; _ga=GA1.2.1380536973.1571212618; ...