google-chrome-extension - GTM - 将事件/数据推送到 gtm dataLayer 不向 https ://www. google-analytics.com/r/collect?v 发送任何内容

标签 google-chrome-extension google-tag-manager google-datalayer

我在我的 chrome 扩展页面中添加了这个 gtm 代码(由内容脚本和 iframe 注入(inject))

// <!-- Google Tag Manager -->
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','owDataLayer','GTM-XXXXXXX');
// <!-- End Google Tag Manager -->

我确认成功加载了 gtm.js 文件。
Request URL:https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXX&l=dataLayer
Request Method:GET
Status Code:200  (from disk cache)

我有一个按钮,下面的代码已附加到按钮的单击事件
dataLayer.push({
    'event': 'tab click',
    'user id' : 123,
    'description' : "Social"
});

当我单击按钮 dataLayer.push 成功但没有发送到 https://www.google-analytics.com/r/collect?开发人员工具栏窗口的“网络”选项卡中没有事件。

有人可以帮我解决这个问题吗?提前致谢!

编辑:
添加标签设置的屏幕截图。
enter image description here

最佳答案

这个周末我花了很多时间阅读 gtm 和 Google chrome 扩展。
最后我得到了this blog post by Simo Ahava .他用解决方案讨论了完全相同的问题。感谢西莫。

这是他博客文章的部分粘贴。我们必须添加 checkProtocolTask : false到每个 gtm 标签,以便发送跟踪它们
谷歌浏览器扩展。

添加 checkProtocolTask : false到要设置的字段

向下滚动到要设置的字段,然后添加一个新字段:

Field Name: checkProtocolTask
Value: false

通常,Google Analytics 要求对 GA 的请求来自 HTTP 或 HTTPS。如果请求来自其他任何地方,则取消该过程。通过将名为 checkProtocolTask​​ 的任务设置为 false,我们可以防止这种检查发生,因为扩展使用自定义 chrome-extension://协议(protocol)。

截屏:

enter image description here

发布此内容以便其他人在遇到相同问题时发现此答案很有帮助。谢谢!

关于google-chrome-extension - GTM - 将事件/数据推送到 gtm dataLayer 不向 https ://www. google-analytics.com/r/collect?v 发送任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45502706/

相关文章:

javascript - 从 chrome.history.search() 回调返回一个字符串

google-chrome-extension - Chrome 扩展 setIcon 不适用于字典

javascript - 通过 Google API OAuth2 对用户进行身份验证以使用 Chrome 扩展程序

google-analytics - 如何将 dataLayer.push 转换为 Google Analytics 目标?

google-tag-manager - Datalayer 推送事件未发送至 google

google-tag-manager - 针对 dom 元素的 Google 跟踪代码管理器事件跟踪

javascript - 在没有弹出窗口的情况下将 onClicked 处理程序添加到浏览器操作?

google-analytics - Google 跟踪代码管理器标记已触发,但事件未显示在 Google Analytics“实时事件”选项卡中

google-analytics - 如何使用 dataLayer 发送并发查询以获取产品详细信息和产品列表?

firebase - Firebase 如何帮助触发谷歌标签管理中的标签