Google 跟踪代码管理器使用沙盒 JavaScript?

Posted

技术标签:

【中文标题】Google 跟踪代码管理器使用沙盒 JavaScript?【英文标题】:Google Tag Manager uses Sandboxed JavaScript? 【发布时间】:2020-10-27 00:03:13 【问题描述】:

在帮助https://developers.google.com/tag-manager/templates/sandboxed-javascript?hl=en 中,Google 看到了说 Google 跟踪代码管理器使用沙盒 JavaScript 的材料。这是在模板部分。沙盒 JavaScript 是否仅在为 GTM 开发模板和标签时使用,或者在设置变量、触发器和标签时在 GTM 界面中使用?谢谢

【问题讨论】:

【参考方案1】:

它仅用于模板、自定义 html 标记和自定义 Javascript 变量中,您可以使用所有 JS 功能。这会带来安全风险(例如,如果您使用恶意负载加载第三方资产),这就是 Google 创建自定义模板的原因。随着模板 api 开始覆盖越来越多的领域,您真的不应该再使用自定义脚本,而是构建自定义模板。

【讨论】:

事实证明,谷歌标签管理器使用完整的 JavaScript。但是还是有一些里面的函数不起作用,比如通过let/const声明变量? 我认为 GTM 不支持自定义模板之外的 ES6(甚至只有一个子集,例如 let/const 和箭头函数)。我会相应地修改答案。

以上是关于Google 跟踪代码管理器使用沙盒 JavaScript?的主要内容,如果未能解决你的问题,请参考以下文章

Google 跟踪代码管理器 - 数据层

Google 跟踪代码管理器自定义变量返回未定义

iOS 上的 Google 跟踪代码管理器用途

在 Google 跟踪代码管理器中,触发器类型“表单提交”适用于 Google 表单提交吗?

Google跟踪代码管理器不工作?

html Google跟踪代码管理器跟踪代码的退出按钮