六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 101|回复: 0

Web Analytics工具domodomain的B/S交互实现机制分析

[复制链接]

升级  72%

8

主题

8

主题

8

主题

童生

Rank: 1

积分
36
 楼主| 发表于 2013-1-27 05:46:54 | 显示全部楼层 |阅读模式
最近在YMU网络的开发过程中试用了domodomain提供的Web Analytics服务,发现其分析功能很强,能很精确地定位访问来源,而且能展现一个用户的页面访问顺序,界面也挺好用(见截图)。但是其服务不是免费的,价格还挺贵的,不过你可以免费试用一个月哦!

在使用domodomainGoogle Analytics这两种Web Analytics工具过程中,顺便分析了一下,发现两者在Browser和Server间交互的实现机制是基本一致的。<o:p> </o:p>下面以domodomain为例说明实现机制,其中目标监测网页:http://youmonitor.us/index.shtml
而referrer为http://java-guru.iteye.com/blog/133803。<o:p> </o:p>1. 首先需要在index.shtml的<span />下增加以下js代码:<o:p></o:p><script src="http://www.domodomain.com/DomoDomain/Sensor/DDSense.aspx?id=73083351-f537<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="45" unitname="C">-45c</st1:chmetcnv>0-abd3<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="88" unitname="F">-88f</st1:chmetcnv>171b<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="24" unitname="a">24a</st1:chmetcnv>85"
      type="text/javascript" language="javascript"><!---->script><o:p></o:p>
<o:p> </o:p>
其中id是申请服务时分配的标识。
<o:p> </o:p>
2. 生成base page<o:p></o:p>
当index.shtml被访问时,js代码(http://www.domodomain.com/DomoDomain/Sensor/DDSense.aspx?id=73083351-f537<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="45" unitname="C">-45c</st1:chmetcnv>0-abd3<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="88" unitname="F">-88f</st1:chmetcnv>171b<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="24" unitname="a">24a</st1:chmetcnv>85)被下载、执行,并返回如下结果:
<o:p> </o:p>
function DD()<o:p></o:p>{<o:p></o:p>var n = new Date();<o:p></o:p>var sTimezone = n.getTimezoneOffset();<o:p></o:p>var sWidth=screen.width;<o:p></o:p>var sHeight=screen.height;<o:p></o:p>var sApp=navigator.appName;<o:p></o:p>var sReferrer=""+escape(document.referrer);<o:p></o:p>var sLocation=""+escape(document.URL);<o:p></o:p>var sColor=0;<o:p></o:p>if (sApp!="Netscape") sColor=screen.colorDepth;<o:p></o:p>else sColor=screen.pixelDepth;<o:p></o:p>document.write("/DDWebSensor.aspx?id=73083351-f537<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="45" unitname="C">-45c</st1:chmetcnv>0-abd3<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="88" unitname="F">-88f</st1:chmetcnv>171b<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="24" unitname="a">24a</st1:chmetcnv>85&keywords="+<o:p></o:p>    "&rnd="+Math.random()+<o:p></o:p>    "&location="+sLocation+<o:p></o:p>    "&referrer="+sReferrer+<o:p></o:p>    "&color="+sColor+<o:p></o:p>    "&width="+sWidth+<o:p></o:p>    "&height="+sHeight+<o:p></o:p>    "&timezone="+sTimezone+<o:p></o:p>    "\" width=\"1\" height=\"1\" >"); <o:p></o:p>}<o:p></o:p>function DD2(){<o:p></o:p>var n = new Date();<o:p></o:p>var sTimezone = n.getTimezoneOffset();<o:p></o:p>var sWidth=screen.width;<o:p></o:p>var sHeight=screen.height;<o:p></o:p>var sApp=navigator.appName;<o:p></o:p>var sReferrer=""+escape(document.referrer);<o:p></o:p>var sLocation=""+escape(document.URL);<o:p></o:p>var sColor=0;<o:p></o:p>if (sApp!="Netscape") sColor=screen.colorDepth;<o:p></o:p>else sColor=screen.pixelDepth;<o:p></o:p>document.write("<o:p></o:p></em></em>
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表