java 如何统计某个网页浏览数,刷新的不进行统计 - java报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

java 如何统计某个网页浏览数,刷新的不进行统计 - java报错

montos 2020-05-29 23:46:01 123

现在有这样一个需求,就是用户可以看到站内的不同模块的不同文章,要对这个每个文章进行浏览数的统计,如果用户刷新网页的话,统计数其实是无效的,有没有好的解决方案?

java刷新 java网页刷新 java刷新报错 java网页报错 网页刷新报错
分享到
取消 提交回答
全部回答(1)
  • montos
    2020-05-29 23:46:10

    我能想到的一种算法: 对Request Headers进行判断。

    比如chrome浏览器按F5刷新的时候,请求头是有Cache-Control:max-age=0,按Ctrl+F5强制刷新,请求头是有Cache-Control:no-cache和Pragma:no-cache

    firefox行为和chrome一样。其他浏览器你可以看看效果。

    这种的对请求头的判断不能防止直接地址栏敲回车访问——因为这实际上不是刷新页面

    ######根据用户访问的ip地址,同一ip地址不叠加,如果是登录用户才能访问的,根据用户id来判断是否已访问过该文章######回复 @slliver : 没做过这方面的功能,只是个人的一点想法..######如果这么做的话,需要把当前访问的Ip地址和文章的ID进行存储,而且刷新的话,频繁的查询数据库,这么做也不是很好######

    使用cookie判断,将cookie设置成浏览器进程有效(可以搜索方法),根据cookie来判断是否算有效浏览。

    ######刷新的时候 你的http headers 中的refer 应该就是你当前页面,判断下 refer 是否是当前URL ######

    上面说到referer的,是没用的,F5刷新和原来的请求发送的referer是一样的

    基于上面的说法这个需求本身也有问题,怎么确定用户是两次想看这个文章还是误操作F5刷新了网页

    我的想法是,凡是请求的先记录先下来,最后做分析的时候在筛选,最后给出包括多次点击和去重点击的分析报告!

    ######如果刷新的不统计,那么每个人每个session只能浏览一次,根据session-id 去重就好了。。
    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

相似问题
最新问题