javascript - 如何统计用户在网站上的停留时间?
阿神
阿神 2017-04-11 13:19:42
[JavaScript讨论组]

想知道用户在当前网站上停留了多长时间。

指用户打开这个网站到关闭这个网站或者跳转到其他网站的这个时间段。

目前没有很好的策略,定时上报似乎是下下策

阿神
阿神

闭关修行中......

全部回复(4)
高洛峰

进入页面时执行个onload
退出页面时执行个onbeforeunload
这个时间差就是在当前页面的时间了。

相关文档:
window.onbeforeunload

伊谢尔伦

当前网站的活动状态对应当前打开的一个浏览器窗口,可以监控当前window对象关闭事件。
但如果用户,同一浏览器打开几个窗口都是同一个网站,只有在浏览器层面解决。
第一种思路,客户端有一个唯一id对应用户,该用户登陆该网站时,后台记录时间,关闭窗口时触发关闭事件,给后台发送一个请求,后台记录关闭时间。不过这个也不完善。
,客户端和服务器采用双工通信。
第二种思路,如果是websocket,成功建立连接到连接断开,可以当做用户在网站的停留时间。
第三种思路,服务器查看建立过连接的IP地址,同一IP地址某一时间段通信频率较高,这个更不准确,只算个大概,当我没说。

伊谢尔伦

很多方法啊,比如设置cookie
onload时候设置一个cookie储存当前时间
onbeforeunload时候获取一个时间,跟之前cookie比较,js计算一下下发。

PHPz

看你想做成什么级别的统计了;我的项目有一个比较强调及时性的;承载一部分的http服务和其他服务;
这个项目的统计用的:
1,http头部的referer;
2,http头部的时间戳;
这种比较适合非http服务的统计;而且要比页面级别的BS结构的JS统计更精准;一般弱一点机房的使用这种方式实现的硬件产品实现这种底层的统计;

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号