google-analytics - Firefox 版本 >56 我可以实时查看流量,但不能在任何报告或仪表板中查看
问题描述
请找到我用来跟踪我的扩展的 dialog.html 页面分析的 javascript 代码。
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-********-1']);
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = 'https://ssl.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
var trackPage = function () {
let request = new XMLHttpRequest();
request.open("POST", "https://www.google-analytics.com/collect", true);
let message ="v=1&tid=" + "UA-**********-1" + "&cid= " + "*********" + "&aip=1" +"&ds=add-on&t=pageview&dp="+"dialog.html"+"&dt="+"TruePath-Home";
request.send(message);
}
function setDOMInfo()
{
if (browser_version>55 && browser_name==='Firefox' ){
trackPage();
}
else{
_gaq.push(['_trackPageview']);
}
}
由于较新版本的 Firefox 不允许跟踪,所以我编写了用于跟踪的自定义代码。setDOMInfo 函数在加载 dialog.html 时启动。
我观察到对于 Firefox 版本 >56,我可以实时查看流量,但不能在任何报告或仪表板中查看。
解决方案
最后,我能够弄清楚为什么它没有更新 Firefox 版本> 56 的分析。
我们需要将 userAgent 信息与请求一起传递。检索 userAgent 的 javascript 代码如下所示: var data = navigator.userAgent;
所以你的代码是
var trackPage = function () {
let request = new XMLHttpRequest();
var data = navigator.userAgent;
request.open("POST", "https://www.google-analytics.com/collect", true);
let message ="v=1&tid=" + "UA-**********-1" + "&cid= " + "*********" + "&aip=1" +"&ds=add-on&t=pageview&dp="+"dialog.html"+"&dt="+"TruePath-Home"+"&ua="+data;
request.send(message);
}
推荐阅读
- python - 在 Mac 上安装 mysqlclient 时出错
- python - 用大型二维向量 Py 计算余弦相似度
- tensorflow - 如何在 Keras 中为 MNIST 观察渐变
- svelte - 浏览器在 svelte-sapper 组件中显示 {#each} 块的问题
- javascript - 无法在 javascript 中设置 cookie 过期日期
- javascript - Angular - 将输入传递给 ng-content 组件
- javascript - 显示从 puppeteer 抓取的数据到 react 应用程序
- amazon-web-services - 无法使用其私有域连接到 Lightsail 中的 AWS 容器服务
- polymorphism - 如何使用 StringTemplate 在循环中进行多态性?
- nlp - “n-gram 袋”的正确实现是什么?