如何创建可部署的JavaScript文件

时间:2012-03-04 18:01:59

标签: php javascript

为了快速举例说明我的问题,请考虑Google提供的JS文件,以捕获我们粘贴在文件中的Google Analytics数据。这个JS文件如何获取所有数据?我想知道如何创建这样的JS文件,我可以将其发给其他人,然后他们可以在自己的网站上运行它,然后将数据存储在我的网站服务器上。简而言之,他们只在他们的页面中复制1-2行JS,并且所有预期的功能都将在他们的网站上运行,但数据将存储在我的Web服务器数据库中。

如何将功能附加到这样的JS文件?我的意思是,如何告诉JS文件是收集分析数据还是显示表单等。我使用PHP进行服务器端处理。到目前为止,我没有找到任何有关此方面的好消息。

修改1:

我想补充说,功能 NOT 仅限于分析。它甚至可以像显示向收件人等发送电子邮件的联系表单一样简单。

3 个答案:

答案 0 :(得分:2)

Google Analytics有一个客户端javascript文件,网站所有者会在其网页中添加引用。当该javascript文件运行时,它会收集有关当前页面的信息,然后使用请求中编码的信息向Google服务器发出请求,Google的服务器会在其数据库中记录该信息。由于ajax调用受到相同来源限制,因此Google返回其服务器的请求实际上是针对GIF图像,其中包含以URL编码的数据。

以下是Google对其工作原理的解释:http://code.google.com/apis/analytics/docs/concepts/gaConceptsOverview.html

要为您的客户创建类似的东西,您必须创建适当的javascript文件,将其托管在您的服务器上,提供将其安装到其网页中的说明,并创建正确的PHP脚本以记录信息在请求GIF时进来(可能是你必须做一些Web服务器配置才能让你的PHP脚本在GIF请求上运行)。

答案 1 :(得分:1)

我认为您可以在此处找到问题的答案:How to send data to remote server using Javascript

简而言之,您将能够使用JSONP将数据发送到其他域。您也可以使用j Query's, $.getJson方法实现此目的。

答案 2 :(得分:0)

插入类似

的内容
<script src="http://myeviltrackingsite.com/track.js"></script>

访问者的浏览器会询问您的服务器track.js。当被问及您的服务器将从访问者获得正常的HTTP标头时,当然还有他的IP。此HTTP-Header包含您想要的所有信息,例如访问者的语言,他使用的浏览器类型。要跟踪访问者的地理位置,您可以使用访问者的IP地址并执行reverse IP lookup。有免费的地理位置数据库可用。