Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Google Analytics追踪FireFox扩展使用情况_Javascript_Firefox Addon_Google Analytics - Fatal编程技术网

Javascript Google Analytics追踪FireFox扩展使用情况

Javascript Google Analytics追踪FireFox扩展使用情况,javascript,firefox-addon,google-analytics,Javascript,Firefox Addon,Google Analytics,我正在开发一个Firefox扩展,希望通过google analytics跟踪它的使用情况,但我无法让它工作 我曾尝试从ga.js手动调用函数,但由于某些原因,该函数无法正常工作。没有产生错误,但也没有收集任何数据 我的最后一次尝试是让一个网站只保存跟踪javascript,然后将其加载到iframe中的扩展中,并配置URL,使其包含有意义的数据。通过这种方式,当我使用浏览器访问上述网页时,分析功能就会连接起来,而不是在扩展中。我已经尝试在站点上放置一些可见的javascript,并确认站点的j

我正在开发一个Firefox扩展,希望通过google analytics跟踪它的使用情况,但我无法让它工作

我曾尝试从
ga.js
手动调用函数,但由于某些原因,该函数无法正常工作。没有产生错误,但也没有收集任何数据

我的最后一次尝试是让一个网站只保存跟踪javascript,然后将其加载到iframe中的扩展中,并配置URL,使其包含有意义的数据。通过这种方式,当我使用浏览器访问上述网页时,分析功能就会连接起来,而不是在扩展中。我已经尝试在站点上放置一些可见的javascript,并确认站点的javascript正在执行。这种方法也适用于其他跟踪器,但我不喜欢它们的输出,更喜欢谷歌分析


你知道我还能做些什么吗?

我认为这是不可能的。Firefox扩展不允许您从其他服务器加载页面。所以我能想到的唯一方法就是让一个不可见的iframe加载代码。对谷歌服务器的ping必须来自属于您的域。所以我猜你自己的服务器必须在每次用户加载扩展时提供页面,这只会杀死你的服务器,并破坏谷歌做所有工作的目的!!如果你找到了解决方法,请发帖子。Chrome扩展可以轻松跟踪

解决方案是与谷歌分析一起使用。工作起来很有魅力

用法非常简单,如下所示:

gaTrack('UA-123456', 'yoursite.com', '/js/script.js');

请注意,由于它不使用cookies,所以页面浏览量和访问量之间,或者访问量和访问者之间没有区别。但是,其余的功能相当可靠

根据您想要跟踪的内容,您可能不需要谷歌分析。Mozilla的addon.Mozilla.org门户已经为插件提供了全面的跟踪和使用统计信息


要检查Mozilla是否提供了所需内容,请转到并选择其中一个公开可用插件的统计信息。

这里有一个小型库,可通过另一台服务器上托管的iframe代理请求:

这绕过了插件sdk中导致ga.js死亡的bug()


此方法允许充分使用google analytics,这与Remy Sharp在库中的有限使用不同。

对于在主/后台脚本中使用分析,您可能需要使用此解决方案:

引用部分答案:

我建议您看看环球分析公司的新测量协议:

这允许您使用XHR POST直接发送GA事件。
这将更好地与Firefox扩展共存。
代码如下所示:


如果您试图在扩展范围内“模拟浏览器”,这可能不是正确的方向。为了实现任何接近真实网站的功能,您必须了解Analytics创建的所有代码执行和事件绑定(在任何给定页面中)。现在还不清楚你的扩展到底是做什么的,因此很难说你是如何做到这一点的。我真的不需要所有特殊的东西,我构建了一个包含我需要跟踪的所有信息的URL,然后想用该URL在分析上启动页面加载事件。也许他们的API有什么我不知道的地方?有没有办法从任何javascript代码中触发自定义事件?呃,Firefox插件实际上可以从其他服务器加载页面。事实上,他们几乎可以做任何事情。尽管你说这不可能,但我认为你在这里描述的内容实际上是可行的。当然,这对自托管插件不起作用,一些公司可能希望将所有数据放在一起。