Google Analytics如何将数据保存到数据库

问题描述:

我正在为我的学校作业制作Google Analytics项目。我主要有两个问题:Google Analytics如何将数据保存到数据库

1)Google究竟何时将数据存储到数据库?当它使用XHR与一些服务器端脚本语言存储到数据库或有没有办法使用普通的JavaScript?

2)如何从Javascript获取用户的IP地址? Google如何为Google Analytics服务?

感谢您的帮助。

Pranz

+2

我猜谁知道这个答案在法律上是不允许分享的。 – inkedmn 2010-04-22 20:52:52

+0

那么,Google Analytics JS就在这里,如果你喜欢它,那就深入研究:http://www.google-analytics.com/urchin.js当然,这并不能解答服务器端的问题。 – icktoofay 2010-04-22 20:57:08

+0

没有什么可以阻止你自己阅读JS并解决它。对于发送给用户执行的任何脚本,没有任何私有的东西(虽然自动格式化程序确实可以让您跟踪和调试它,但通常不值得对混淆代码进行反向工程。 – 2010-04-22 20:58:28

1)是的。用户端的JavaScript向服务器发送请求,服务器使用自己的应用程序(您可以使用PHP或您的服务器设置的任何语言进行调用)处理该请求。

2)您可能会发现使用$ _SERVER ['REMOTE_ADDR']获取IP地址最简单。

(1)Google Analytics(分析)是通过包含所谓的“页面标签”来实现的。这被称为Google Analytics(分析)跟踪代码(GATC),是用户添加到他或她网站的每个页面上的一段隐藏的JavaScript代码片段。此代码充当信标,收集私人访客数据并将其发送回Google数据收集服务器进行处理。数据处理每小时进行一次,尽管实时拖欠可能需要3-4小时。不知道他们在服务器端使用什么可能是Java

(2)您需要服务器端包含才能使其工作 - 如下所示。 /

/ This part gets the IP 
var ip = '<!--#echo var="REMOTE_ADDR"-->'; 

// This part is for an alert box 
alert("Your IP address is "+ip); 

// This part is for the status bar 
window.defaultStatus = "Your IP address is "+ip; 

的谷歌分析JS代码不直接跟我们的服务器 - 将其添加到页面的图像,并追加所有的信息发回作为URL参数图片 - 签出页面Google Analytics(分析)在运行Firebug Net面板的情况下运行,您将看到发生了什么。因此,JS代码不需要计算出IP,这将作为图像请求的一部分传递给GA记录服务器。

关于发生什么的最好官方描述是在Google BigTable论文中 - 有几段提供了关于幕后发生的一些提示。

在结构化数据库上记录&活动报告时,也可能值得关注this Stack Overflow question

问候

+0

哦......这样他们如何避免跨站点脚本问题? – Pranz 2010-04-23 20:36:52

+1

是的,一切都发生在托管页面的上下文中,所以所有的cookie都是第一方,并且没有跨站脚本。 – Jamie 2010-04-25 22:34:55