我正在尝试使用无 cookie 的 Google Analytics 实施,以便我们的网站可以根据 Google Analytics 文档,在用户接受 cookie 之前跟踪访问(一旦接受,就切换到标准版本)。
我正在使用本教程中描述的技术: https://medium.com/swlh/how-to-use-google-tag-manager-and-google-analytics-without-cookies-7d041c73cc76
我使用以下代码(出于本文的目的,进行了简化并删除了不相关的其他脚本)
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-xxxxxxxx', {
send_page_view: true,
client_storage: 'none',
client_id: '<key-from-local-storage>',
});
Run Code Online (Sandbox Code Playgroud)
使用这种方法似乎一切正常 - 直到我在检查器中查看站点cookie。无论 client_storage 设置如何,仍然会生成“_ga”cookie。
当我使用标准 cookie 版本的分析(没有 client_storage:“none”)时,会以完全相同的方式生成相同的 cookie。
我还尝试使用同意模式,使用以下代码
gtag('consent', 'default', {
analytics_storage: 'denied',
ad_storage: 'denied'
});
Run Code Online (Sandbox Code Playgroud)
稍后当用户遵守时将其更新为授予。这适用于阻止内容,但也会阻止在 Analytics 上发生的所有跟踪 - 不会显示任何结果。
有谁知道有什么方法可以真正让 Analytics 不生成 _ga cookie,但仍然跟踪访问的 URL 和基本数据,而不需要 cookie?
当无 cookie 模式像以前一样生成 cookie 时,它会做什么?
我错过了什么吗?
编辑:我尝试在旧的 Analytics 版本上使用相同的无 cookie 更新,该版本使用 ga(...) 函数,并且 cookie …