无分析环境中的Google Analytics(brightscript)

pan*_*uli 7 google-analytics

我正在Roku框(brightscript)上实现分析事件和页面视图跟踪.那部分不是那么重要,但要知道JS不是一个选项,也不是cookie设置.我可以设置变量,但它们不是典型的cookie.好的 - 所以我实施了一个很棒的解决方案(google-analytics-for-roku-developers /),一切都很好 - 除了!

Google Analytics似乎没有追踪独特性,并且正在列出ZERO.它正在精美地跟踪事件,但是:)

以下是我的URI请求示例(为清晰起见,已解码):

http://www.google-analytics.com/__utm.gif?utmwv=1&utmn=1736644096&utmsr=720p HDTV&utmsc=24-bit&utmul=en-us&utmje=0&utmfl=-&utmdt=RokuPageView&utmhn=Home&utmr=-&utmp=Home&utmac=UA-5035974-13&utmcc=__utma=1394882688.2097034752.1347384621.1347384621.1347384621.2;+__utmb=1394882688;+__utmc=1394882688;+__utmz=1394882688.1347384621.2.2.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none);+__utmv=1394882688.13C1CJ109560;
Run Code Online (Sandbox Code Playgroud)

所以,问题#1 - 我从文档中了解到__utma是跟踪唯一身份的元素.你觉得那里有什么不对吗?

问题#2 - 我实现的开发代码为每个事件发送一个新的随机cookie.这对我来说似乎不对.我正在考虑将其更改为基于会话的cookie,该cookie会在所有事件中持续存在.那是我超越理解的时候.对此有何指导?

Tom*_*son 1

我认为#2 的答案就是#1 的答案。基本上,您需要在代码中模拟浏览器如何处理 cookie。“会话 cookie”只是一个 cookie,即与请求和响应一起作为 HTTP 标头传递的值 - 之所以成为会话 cookie,是因为它的过期日期设置为过去,这告诉浏览器当浏览器实例关闭时删除它。

Cookie 非常简单——一种绕过 HTTP 无状态(没有内存)这一事实的机制。如果您在响应中传递 HTTP 标头Set-cookie: <value>,客户端应该记住该值并将其Cookie: <value>在后续请求的标头中传回。(与域和过期等相关的 cookie 还有更多内容,但也不是那么多)。

因此,如果您的客户端(Roku)有某种持久性机制,那么您只需要存储任何新的 cookie,然后在设置新的随机 cookie 之前,检查标头,如果 cookie 已存储,则将其按原样发送回去。您可能需要执行某种定期清理过期 cookie 的任务,等等。

不要害怕饼干。它只是一个标头(具有浏览器赋予的魔力)。