为什么Google Analytics使用单像素图片来传输数据?

2024-01-06

Google Analytics(分析)嵌入一个单像素 GIF,其 URL 如下所示:

http://www.google-analytics.com/__utm.gif?utmwv=5.1.5&utms=5&utmn=1532897343&utmhn=www.douban.com&utmcs=UTF-8&utmsr=1440x900&utmsc=24-bit&utmul=en-us&utmje=1&utmfl=10.3%20r181&utmdt=%E8%B1%86%E7%93%A3&utmhid=571356425&utmr=-&utmp=%2F&utmac=UA-7019765-1&utmcc=__utma%3D30149280.1785629903.1314674330.1315290610.1315452707.10%3B%2B__utmz%3D30149280.1315452707.10.7.utmcsr%3Dbiaodianfu.com%7Cutmccn%3D(referral)%7Cutmcmd%3Dreferral%7Cutmcct%3D%2Fgoogle-analytics-architecture.html%3B%2B__utmv%3D30149280.162%3B&utmu=qBM~

为什么不使用 AJAX 调用?使用单像素 GIF 有什么好处?


因为您无法真正执行跨域 AJAX(CORS 除外,但这是一个不同的故事,并且是最近出现的现象,支持程度不高。)AJAX 适用于同源请求。此外,Google Analytics 是从 Urchin 分叉的,它实际上早于 AJAX 技术的采用。

请求图像是分析服务“请求”某些内容作为将某些内容发送到第三方服务器的一种非常标准的做法。 AJAX/CORS 没有真正意义的原因是,您实际上并没有请求在页面上使用的重要资源,因此您希望请求本身尽可能快且开销更少。

分析服务偶尔处理从客户端发送数据的另外两种方式是:

  1. 包括一个不可见的 iframe,iframe src 上的查询字符串传递分析数据

  2. 请求图像,而不是返回图像,而是返回带有HTTP 204 标头 https://stackoverflow.com/q/6638504/172322.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么Google Analytics使用单像素图片来传输数据? 的相关文章

随机推荐