摘要:本文最初发布于我的个人博客咀嚼之味是一个简单的访问量统计工具。如何从版本迁移到我已经把迁移的成本降到最低,只要替换引入的文件即可老版本需要引入的文件新版本需要引入的文件因为版本基于的服务,所以需要额外引入的一个库文件。
本文最初发布于我的个人博客:咀嚼之味
Hit Kounter 是一个简单的访问量统计工具。据我从数据库里的数据目测,现在已经拥有了 9 位用户!不过我要对这九位用户说声抱歉啦。
Hit Kounter 原本部署于 SAE 上,而近期 SAE 针对使用 MySQL 的应用开始收费。本项目只是一个本人使用业余时间开发的小工具;它本身包含的功能也很精简,并不适合使用付费服务。所以我已经将 Hit Kounter 服务迁移至 LeanCloud 上。原本部署在 SAE 上的服务预计在 五一假期 后下线,对已经使用 Hit Kounter 的一些用户,我再次表达我的歉意!
由于此次改版改动比较大,我是 fork 了一份代码出来进行修改的;改版后的 Hit Kounter 在 Github 上仓库地址是 zry656565/Hit-Kounter-LC,区别于原来的 Hit Kounter PHP 版:zry656565/Hit-Kounter
使用方式上,目前 v0.2 版本相比于 v0.1 并没有什么改变,接下来会从以下几个方面介绍一下:
如何为你的博客添加访问统计
Hit Kounter 的 JS 接口
如何从 v0.1.1 版本迁移到 v0.2.0
小结:Hit Kounter 的未来
如果你是 Hit Kounter v0.1 的用户,可以直接阅读 如何从 v0.1.1 版本迁移到 v0.2.0。
如何为你的博客添加访问量统计 1. 引入脚本首先,在你的页面中引入这两个脚本,第一个脚本是 LeanCloud 的库脚本,引入了它我们才能使用 LeanCloud 的服务;由于你可能在每个页面都需要显示访问量,把它加入根模板也许是个不错的选择。
2. 显示当前页面的访问量 -
你可以在页面的任何地方插入这句 HTML 片段,你之前引入的脚本会自动检查当前页面上带有 data-hk-* 属性的元素,并针对你给出的属性值向服务器请求数据,最后把得到的结果替换到上面的标签内。可以参考 我博客中的例子。
3. 显示指定页面的访问量如果你希望在文章列表页中显示各个页面的访问量分别是多少,那么你就要使用一个 url 来填充 data-hk-page 的属性值,就像这样:
-
那么 Hit Kounter 检测到这个标签以后,就会向服务器请求该地址的具体访问量,并将默认值 - 替换为实际值。可以参考 我博客中的例子。
Hit Kounter 的 JS 接口Hit Kounter 会在全局注入 Icarus 对象,它是与服务器交互的数据接口。通过它,我们就可以直接向服务器发送请求。先看看下面这个例子:
Icarus.request({ api: "hk.page.get", v: "1.0", data: { pages: [ { url: "http://test.com/1" }, { url: "http://test.com/2" }, { url: "http://test.com/3" } ] }, success: function(results) { for (var i = 0; i < results.length; i++) { console.log(results[i].domain, results[i].url, results[i].count); } }, failure: function(code, err) { console.log(code, err); } });
上面这个例子中,我们主要是获取了三个页面的具体访问量;目前 Icarus 支持的接口有四个(具体可以参考 Hit-Kounter-LC Wiki):
hk.page.increment
hk.page.get
hk.page.getTop
hk.page.getByDomain
至于如何使用就由你们自由发挥啦。
如何从 v0.1.1 版本迁移到 v0.2.0我已经把迁移的成本降到最低,只要替换引入的文件即可:
因为 v0.2 版本基于 LeanCloud 的服务,所以需要额外引入 LeanCloud 的一个库文件。另外需要注意的是,第二个文件除了版本号做了更新,还多了 -lc 几个字符哦。
本次更新在将后端服务从 SAE 替换为 LeanCloud 的同时并没有做太多的功能改进。最主要的一点功能改进是引入缓存机制,在数据超过默认的五分钟之前,Icarus 不会向服务器发送新的 get 请求。(increment 请求当然还是照发不误的啦)
以下内容请使用了 Icarus 接口的用户注意Icarus 接口所接受的多余的参数现在需要放在 data 对象中,注意对你之前的代码做一定修改。直接看例子可能比较直观:
/*================ * 老版本调用方式 *================*/ Icarus.request({ api: "hk.page.get", v: "1.0", pages: [ // <--- { url: "http://test.com/1" } // <--- ], // <--- success: function(results) {}, failure: function(code, err) {} }); /*================ * 新版本调用方式 *================*/ Icarus.request({ api: "hk.page.get", v: "1.0", data: { // <--- pages: [ // <--- { url: "http://test.com/1" } // <--- ] // <--- }, // <--- success: function(results) {}, failure: function(code, err) {} });小结:Hit Kounter 的未来
当然,Hit Kounter 未来会加入越来越多的功能,包括但不限于:
添加一个能够获得全站的访问总量的 API
通过添加 为用户提供一个很方便的方式来导入初始的访问量数据 完善各种可能的错误信息(包括服务端和浏览器端的错误) TODO List 可以在 这个 issue 中看到,而且因为 zry656565/Hit-Kounter-LC 是开源项目,也很期待大家能够多吐槽,如果能给 Hit-Kounter-LC 贡献代码那就再好不过啦~。 文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。 转载请注明本文地址:https://www.ucloud.cn/yun/79274.html
摘要:所以我已经将服务迁移至上,有兴趣的同学请移步最新的一篇博文博客访问量统计工具查看最新版本的使用方法。但是针对博客的访问量统计,却没有什么可用的工具。 本文最初发布于我的个人博客:咀嚼之味 2016.04.23 通告: Hit Kounter 原本部署于 SAE 上,而近期 SAE 针对使用 MySQL 的应用开始收费。本项目只是一个本人使用业余时间开发的小工具;它本身包含的功能也很精...
摘要:所以我已经将服务迁移至上,有兴趣的同学请移步最新的一篇博文博客访问量统计工具查看最新版本的使用方法。但是针对博客的访问量统计,却没有什么可用的工具。 本文最初发布于我的个人博客:咀嚼之味 2016.04.23 通告: Hit Kounter 原本部署于 SAE 上,而近期 SAE 针对使用 MySQL 的应用开始收费。本项目只是一个本人使用业余时间开发的小工具;它本身包含的功能也很精...
摘要:作者本文转载自公众号大道至简原文链接优秀的数据工程师,怎么用在上做分析是一款定位于在线事务处理在线分析处理的融合型数据库产品,实现了一键水平伸缩,强一致性的多副本数据安全,分布式事务,实时等重要特性。配置文件由四个部分组成,分别是和。 作者:RickyHuo本文转载自公众号「大道至简bigdata」原文链接:优秀的数据工程师,怎么用 Spark 在 TiDB 上做 OLAP 分析 Ti...
阅读 3257·2021-11-16 11:45
阅读 2617·2021-09-22 15:23
阅读 542·2021-07-30 14:58
阅读 443·2019-08-30 15:54
阅读 2221·2019-08-29 16:19
阅读 3000·2019-08-29 12:45
阅读 920·2019-08-23 17:57
阅读 1776·2019-08-23 17:54