如何将测量协议用于桌面应用程序



我尝试的是

[带POST]

jQuery.support.cors = true;
$.ajax({
    url : "https://www.google-analytics.com/collect?v=1&tid=UA-XXXXXXXX-1&cid=e8efa9cb-7b9e-479e-b07b-1528547dcdb4&t=event&ec=UX&ea=click&z=123456",
    type : 'POST',
    cache : false,
    dataType : 'json',
    success:function(data) {
        alert("Success: " + JSON.stringify(data));
    },
    error: function(data) {
        alert("Failure: " + JSON.stringify(data));
    }
});

或[使用GET]

jQuery.support.cors = true;
$.ajax({
    url : "https://www.google-analytics.com/collect?v=1&tid=UA-XXXXXXXX-1&cid=e8efa9cb-7b9e-479e-b07b-1528547dcdb4&t=event&ec=UX&ea=click&z=123456",
    dataType : 'json',
    success:function(data) {
        alert("Success: " + JSON.stringify(data));
    },
    error: function(data) {
        alert("Failure: " + JSON.stringify(data));
    }
});

单击按钮后,我添加了此代码。

我的状态是200,但在谷歌分析报告[实时数据]中显示没有活跃用户。如果我查看前几天的报告,它显示了一些用户会话的计数。

测量协议处理事件的方式似乎存在错误。我在这里创建了一个问题:问题848:实时报告上没有显示事件

如果不发送应用程序变量,数据将不会显示在实时报告中。一旦你发送了一个带有它的请求,它们就会再次弹出,但如果你发送了另一个没有它的事件,它们就会丢失。此时不需要应用程序变量。此外,对您的请求进行的调试会返回有效的命中数据。

https://www.google-analytics.com/debug/collect?v=1&tid=UA-xxxxx-1&cid=e8efa9cb-7b9e-479e-b07b-1528547dcdb4&t=event&ec=UX&ea=click&z=123456
{
  "hitParsingResult": [ {
    "valid": true,
    "parserMessage": [ ],
    "hit": "/debug/collect?v=1u0026tid=UA-xxxxx-1u0026cid=e8efa9cb-7b9e-479e-b07b-1528547dcdb4u0026t=eventu0026ec=UXu0026ea=clicku0026z=123456"
  } ],
  "parserMessage": [ {
    "messageType": "INFO",
    "description": "Found 1 hit in the request."
  } ]
}

解决方案/解决方案:

将以下项目添加到您的请求中应该可以解决问题。同样,目前还没有证明它们是必需的。然而,我的测试表明,当你发送这些信息时,所有内容都会再次正确显示在实时报告中。

cd=ScreenName&an=ApplicationName&aid=ApplicationId&av=3.0&ai‌​id=1.0

我认为这不是技术问题,而是数据兼容性问题。您使用的CID似乎不符合CID的GA结构,即[10位数字][dot][10位数字],即1234567890.1234567890尝试强制使用其他ID来检查我的解决方案。

您有哪些可能的问题:

  1. 希望"UA-XXXXXXXXX-1"-这只是一个代码示例,您在代码中使用"真实"的GA ID
  2. 关于ClientID:在GA文档中,您可能会看到类似"35009a79-1a05-49d7-b876-2b884d0f825b"的ClientID。但是此ClientID应该与访问您网站的网站用户的某些ClientID相匹配。如果没有特定设置,GA将不会生成类似"35009a79-1a05-49d7-b876-2b884d0f825b"的ClientID,因为GA会自动生成格式为XXXXXXXXXXXXXXXX的ClientID(如"1068584379.1447331221")

如何手动查找ClientID:为您的网站查找"_ga"cookie,它应该看起来像"GA1.2.1068584379.1447331221"。ClientID在此cookie中为1068584379.144733121

如何在JS srcipt:中获取此参数

ga(function(tracker) {
  var clientId = tracker.get('clientId');
});

请记住,ClientID标识每个唯一的用户(浏览器),并将测量协议发送的用户数据与客户端收集的用户数据(通过GA-js库)联系起来。因此,要在GA报告中查看数据(由测量协议发送),最好使用"真实"的ClientID,对于过去访问过网站的用户。

最新更新