ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

“不蒜子”统计总访问人数脚本

2021-07-20 01:03:23  阅读:177  来源: 互联网

标签:脚本 不蒜子 请求 SQLite 访问 ajax https


网页访问人数统计脚本

meethigher/count-for-page: 类似于“不蒜子”的统计功能,根据ip来统计页面访问人数

之所以要实现这个脚本,还是受不蒜子启发。

我从2019年,就开始使用不蒜子了,但是2020年末,我发现不蒜子有一个问题。就是在IOS端跟PC端,数据总是不变,查看接口返回内容,就是一个一成不变的数据。

在旧版的安卓Chrome浏览器中,数据是正确的,换成新版之后,又出问题了。

我怀疑是不蒜子后台的逻辑可能出了问题,因为网上也查不到相关资料,所以就打算自己实现一个。

正好今天公司停电,不上班,所以就花时间完成了这个脚本。

环境

  1. Java
  2. SQLite
    • 一开始我是想用记事本,主要是直接持久化到硬盘,不会浪费太多内存。想了很久,想实现类似于外键这种功能,还真不好整
    • SQLite,一款自给自足、无服务器、无配置的数据库,不就是一个记事本嘛。解决了占用内存过大的问题。

使用

  1. 创建SQLite数据库,路径在application-dev.properties下面修改

  2. 启动java项目之后,浏览器访问http://localhost:9090/,出现跳转页面,说明启动成功

  3. 用Postman发送post请求到http://localhost:9090/count,请求体内容是要统计的url,后台会根据ip进行计数统计。后台记录该ip第一次请求的设备、时间

页面访问时,前端页面在所有资源加载完毕之后,携带当前网页url,开始执行ajax请求,获取访问总人数。

后台的数据如下,两张表通过vId来进行关联。

遇到的难题

  1. ajax访问同站不同端口跨域
  2. https发送ajax时,目标必须为https
    • 这个地方,我一开始是通过nginx启动443端口配置https,反向代理apache9090端口和tomcat80端口,但是有点麻烦。
    • 目前使用的方法是,apache配置443端口配置https,tomcat配置9090端口配置https,占用内存会稍微小点。

参考文章

标签:脚本,不蒜子,请求,SQLite,访问,ajax,https
来源: https://www.cnblogs.com/meethigher/p/15032974.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有