谷歌分析发送事件有时失败

Google Analytics send event fails sometimes

本文关键字:失败 事件 谷歌      更新时间:2023-09-26

我试图记录每次用户下载特定文件时的事件,但对分析服务器的请求不时被取消(尽管下载开始)。

代码如下:

ga('send', 'event', {
    'eventCategory': 'Addon',
    'eventAction': 'Download',
    'hitCallback': function() {
        document.location = $scope.file.file_url;
    }
});

(如果info很重要,文件驻留在另一个主机上)

我想请求被浏览器取消了,但为什么会发生这种情况,我能做些什么来防止它?

用户在下载过程中是否停留在同一页面上?如果用户被重定向到另一个页面(比如她下载的文件的PDF预览,或者感谢页面),那么代码可能没有时间执行。使用JS的setTimeout来延迟重定向。

除此之外,还需要更多的信息和示例来解决您的问题。

我通过在a标签中添加download属性来解决这个问题:

<a href="mydownloadurl" download>Download</a>

我注意到我在开始下载时收到了这个消息:

资源被解释为文档,但以MIME类型application/octet-stream传输

经过谷歌搜索,我找到了解决方案,这是添加下载属性。结果是,ga请求不再被取消。浏览器一定是被这个错误弄糊涂了,取消了所有正在进行的请求(或其他什么)。我现在做了一些测试,在大约20个ga调用中,它们都是成功的。