【问题标题】:Google Analytics: XHR instead of pixel-tracking谷歌分析:XHR 代替像素跟踪
【发布时间】:2015-06-01 13:14:18
【问题描述】:

默认情况下,谷歌分析使用像素跟踪技术将统计信息发送到服务器。我可以在 analytics.js 中看到一段用于生成新图像对象的代码。

ta = function (a) {
        var b = M[u]("img");
        b.width = 1;
        b.height = 1;
        b.src = a;
        return b
    }

但浏览器加载此图像太晚了,毕竟页面上的所有图像。因此,使用 XHR 请求可能是一种解决方案。我在 analytics.js 中找到了这样一段代码,它显示了谷歌分析可以发送 xhr 请求而不是像素跟踪。

"image" == c ? wc(b, d, e) : "xhr" == c && wd(b, d, e) || "beacon" == c && x(b, d, e) || ba(b, d, e)

如何让它以这种方式工作?

【问题讨论】:

    标签: javascript google-analytics xmlhttprequest


    【解决方案1】:

    您可以通过将transport 选项设置为'beacon' 来使用新的navigator.sendBeacon 方法。这是一个例子:

    ga('send', 'event', 'click', 'download-me', {transport: 'beacon'});
    

    这是文档: https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#transport

    sendBeacon 是比 XHR 更好的选择,GA 会自动处理不支持它的浏览器的回退。如果你真的想使用 XHR,你可以将transport 选项设置为'xhr',但我建议在所有情况下都使用'beacon'。将来,'beacon' 选项可能会成为默认选项。

    【讨论】:

      猜你喜欢
      • 2015-10-07
      • 2014-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-06
      • 2014-05-20
      • 1970-01-01
      相关资源
      最近更新 更多