我有一个问题,就两种看似不同的方式来实现在谷歌分析中发送一个事件作为非交互点击类型。
(1)协议文档: https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#ni
在查询参数中:
&ni=1
/collect?v=1&t=event&ni=1
(2)Google Analytics开发指南: https://developers.google.com/analytics/devguides/collection/analyticsjs/events
ga('send', 'event', 'Videos', 'play', 'Fall Campaign', {
nonInteraction: true
});
我推断允许我这样做:
ga('send', {
hitType: 'event'
eventCategory: 'myCategory',
eventAction: 'myAction',
eventLabel: 'myLabel',
nonIteraction: true
});
但是,当我在Chrome浏览器开发控制台中查看网络流量时,我没有看到" ni = 1" url参数。以下是存在的参数列表(不包括值):
ν: _V: A: T: _s: 光盘: DL: DP: UL: 德: DT: SD: SR: VP: JE: EC: EA: 一个: AV: 援助: AIID: _u: JID: gjid: CID: TID: _gid: Z:
这两种实现之间有什么区别,最终结果是否相同?
答案 0 :(得分:1)
我同时拥有Google Analytics事件跟踪的服务器端和JavaScript实现,根据我的经验,它们的处理方式完全相同。
在我的服务器端实现中,我将有效负载直接发送到/collect
位置,其查询参数与您发布的完全相同(包括&ni=1
)。
在JavaScript中,我使用与{'nonInteraction': true}
相同的语法作为我的fieldsObject。看似唯一的区别是我把nonInteraction
放在引号中(但我不认为这足以阻止它 - 值得一试)。
当我使用Google Analytics调试程序时,我可以看到ni=1
显示在我的控制台中(此处是日志的一部分):
此处它位于“网络”标签中:
我会仔细检查您的t
参数实际上是event
并仔细检查您是否正在检查正确的参数(也许您有可能正在查看不同的事件)?
我还尝试安装Google Analytics Debugger Chrome extension(即使是暂时的),以更直观地表示控制台中的每个有效负载。
Google Analytics(分析)不会将您发布的两种方法视为不同,因此如果您发送的事件实际上是您发布的,则ni
参数应该在那里。也许其他人可以从你发布的内容中收集一些额外的想法,但对我来说似乎一切都已正确实施。
答案 1 :(得分:0)
我原来问题的答案: 是的 - 两种实现的最终结果是相同的。两者都应该包括" ni = 1" url参数。
如果您在开发控制台网络流量或服务器日志中没有看到此信息,则表示存在错误。就我而言,我的错误在我原来的帖子中很明显 - 请注意错字:
nonIteraction: true
应该是:
nonInteraction: true