gpt4 book ai didi

google-analytics - 尝试使用 Google Analytics 用户计时但未记录任何结果

转载 作者:行者123 更新时间:2023-12-03 15:23:56 25 4
gpt4 key购买 nike

我正在尝试使用 GA 用户计时来跟踪我们网站中 ajax 事件的持续时间。我有一个集中的ajaxCall 函数,它封装了jQuery ajax 调用方法。这似乎是放置调用时间的理想场所,因为我们几乎所有的 ajax 调用都通过这个方法。

我遇到的问题是 GA 似乎没有注册计时命中。

这是我用于 ajaxCall 方法的代码:

function ajaxCall(url, data, fnSuccess, dataType, fnFailure)
{
if (!fnFailure)
{
fnFailure = function(jqXhr)
{
var lastDitchHtml = window.getCriticalErrorDialog("An error occurred during the ajax call.");
window.showCeebox(lastDitchHtml, 120, 350);
};
}

var a = $('<a>', { href : url })[0];

var startTime = getTimestampMilliseconds();

$.ajax({
cache : false,
async : false,
url : url,
type : 'POST',
dataType : dataType,
data : data,
success : fnSuccess,
error : fnFailure
});

var endTime = getTimestampMilliseconds();
var duration = endTime - startTime;

window.ga('send', 'timing', 'AjaxCall', a.pathname, duration);
}

这是 getTimestampMilliseconds 方法的代码:
function getTimestampMilliseconds()
{
if (window.performance)
{
return window.performance.now();
}
else
{
return new Date().getTime();
}
}

我已经尝试使用 javascript 对象作为发送的替代语法,如下所示:
window.ga('send', {
hitType : 'timing',
timingCategory : 'AjaxCall',
timingVar : a.pathname,
timingValue : duration});


window.ga('send', {
'hitType' : 'timing',
'timingCategory' : 'AjaxCall',
'timingVar' : a.pathname,
'timingValue' : duration});

我已经确认信标是通过 Chrome Google Analytics Debugger 插件和 Fiddler 发送到 GA 的。 Fiddler 显示对 GA 的请求返回一个小图像和 200 OK 结果。

我已经等了整整 24 小时才显示结果,但一无所获。

我已经验证页面浏览量和事件跟踪得很好,只是没有计时请求。

任何帮助将不胜感激。

最佳答案

我的一位同事的进一步调查找到了答案。

我编写的 getTimeStampMilliseconds 函数返回一个带有小数部分的值(例如 450.98761),这显然是 Google API 不喜欢的。更复杂的是,Google 根本没有返回任何类型的错误代码,这让我们认为一切正常。

更改代码以在计时调用中仅传递整数毫秒数解决了该问题。

关于google-analytics - 尝试使用 Google Analytics 用户计时但未记录任何结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23016403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com