发现新文章

我们已经通过 Google Adsense 审核!不出意外,在未开启广告拦截器的情况下,应该已经可以看到广告了

如果您对广告位置不满意(如:占据面积大,挡住主要内容等情况),请前往 置顶文章 告知我们!

536 字
3 分钟
静态博客也想展示文章浏览量?当然可以!
利用Umami等站点分析软件可以让管理员了解站点活跃度,但是如果我们想向用户展示一些数据呢?
2025年6月18日
0 次

引言#

如果你用过WordPress,Halo等动态博客框架,你大概会在用户视角访问博文的时候看到浏览量这个信息。

这个原理很简单,因为动态博客依赖于一个VPS,只需要让用户每次访问的时候给浏览量+1即可。

那么如果我们是静态博客呢?

我们可以依赖一些第三方服务,比如Umami Cloud。在你的静态博客的head注入一个js,这样你就可以看到你的站点分析了,类似下图

现在我们确实可以看到每个文章(即/posts/xxx)的访问量了,但是我们要如何展示给用户呢?

逆向Umami的只读页面!(新版v3)#

感谢nightNya提供的方案,你是天才!

首先我们启用分享URL

注意这里的 7PoDRgCzHFTs2vWB ,每个站点都不一样

接着我们请求 https://cloud.umami.is/analytics/us/api/share/7PoDRgCzHFTs2vWB,得到 注意,这里的 us 为你创建的账号区域,美国为us,欧盟为eu

{
"websiteId": "a66a5fd4-98b0-4108-8606-cb7094f380ac",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ3ZWJzaXRlSWQiOiJhNjZhNWZkNC05OGIwLTQxMDgtODYwNi1jYjcwOTRmMzgwYWMiLCJpYXQiOjE3NTA4MDIwMzB9.X5GQT5kslh6r25sFlap4Asz1NDA7mN3kcZW8wqbrnBc"
}

再接着我们请求,携带请求头 x-umami-share-token 值为上一步获得的Token

https://cloud.umami.is/analytics/us/api/websites/a66a5fd4-98b0-4108-8606-cb7094f380ac/stats?startAt=0&endAt=1750805999999&unit=hour&timezone=Asia/Hong_Kong&path=eq./posts/cf-fastip/&compare=false

这里解释几个关键Params,其他的照搬

  • startAt:统计开始时间。Unix时间戳,我们填写为0让Umami从1970年开始统计

  • endAt:统计结束时间。Unix时间戳,我们可以使用 Date.now() ,即当前时间,和startAt参数联动即可实现统计总浏览量

  • path:要查询的路径,填写为你的文章页去除了Host的路径,如 /posts/hello 。注意!Umami会将 /posts/hello/posts/hello/ 视为两个不同的路径,请注意你的博客框架是否使用 /。在v3版本中,需要使用 eq. 前缀来进行精确匹配,例如 path=eq./posts/hello/

你会得到

{
"pageviews": 1655,
"visitors": 343,
"visits": 411,
"bounces": 183,
"totaltime": 30592,
"comparison": {
"pageviews": 0,
"visitors": 0,
"visits": 0,
"bounces": 0,
"totaltime": 0
}
}

pageviews 即浏览量。 visitors 即访问人数。

Tips:浏览量记录为任意用户只要访问了则计数一次。而访问数记录不会记录单IP多次重复访问和同一时间段的多次请求不同页面

Enjoy it!

最终效果:

这篇文章是否对你有帮助?

发现错误或想要改进这篇文章?

在 GitHub 上编辑此页

文章修订历史 (14 次)

查看变更记录
2025年10月11日 19:42:12 99278cf

update: 更新Umami API路径和响应数据处理逻辑

2025年8月1日 08:16:25 2f74587

!update: 将图源由R2改为Netlify

2025年7月26日 09:15:27 98609b5

feat: 更改域名为2x.nz

2025年7月19日 16:52:49 146fe9b

更改图源为EdgeOne

2025年7月19日 16:09:57 9bf0d90

chore: 更新图片域名从eo-r2.2x.nz到r2.afo.im

2025年7月19日 15:18:58 f5afef1

更改图源为EdgeOne

2025年7月18日 12:27:16 c7e56a3

1

2025年7月4日 07:46:06 08ee3e2

docs(posts): 更新静态博客文章中的图片链接

2025年7月4日 07:43:02 b3d16de

posts: 更新图片链接和文档说明

2025年7月1日 23:29:28 4e3e7e8

posts: 更改图源CDN为Secbit MCDN,并且页脚放置赞助信息

2025年6月26日 21:07:29 b480111

update: 更新R2源。删除302

2025年6月25日 06:21:51 cad7e2e

posts: 更新文章:《静态博客也想展示文章浏览量?当然可以!》更新新的方法,直接针对Umami逆向

2025年6月25日 00:10:13 e2d1f68

update: 更新R2源

2025年6月18日 01:55:47 bd40f24

posts: 发布文章:静态博客也想展示文章浏览量?当然可以!

静态博客也想展示文章浏览量?当然可以!
作者
二叉树树
发布于
2025年6月18日
许可协议
CC BY-NC-SA 4.0