使用免费的|使用免费的 Cloudflare Workers 搭建 Serverless 站点计数服务
这是重构个人网站的前期准备之一。用于统计每个页面和整个站点的访问量。后续如果评论系统有不错的选择的话另说,不然也可能会再加入评论系统的相关内容整合在一起。
该项目技术栈:
- Typescript
- Cloudflare Wrangler
- Worktop (封装 Worker 的常用方法和支持 Router)
- Webpack
使用说明 第一步,Fork 本项目,并 Clone 至本地。
- 源码: https://github.com/willin/clo...
- 镜像: https://gitee.com/willin/clou...
# 安装命令行
npm install -g @cloudflare/wrangler
# 登录 Cloudflare
wrangler login
# 创建 KV 存储桶
wrangler kv:namespace create "views" --env production
打开
wrangler.toml
,修改以下配置:- account_id
- zone_id
- route
- kv_namespaces 中的 id
wrangler publish --env production
。需要在仓库设置中,配置 Secrets。名称为:
CF_API_TOKEN
,传入 Cloudflare 的 API Token。API Token 生成访问: https://dash.cloudflare.com/p... ,选择使用模板
Edit Cloudflare Workers
创建即可。配置成功后需要给 DNS 中添加一条 A 解析,设置为:
192.0.2.1
并通过 CDN 加速。文章图片
API PUT /pv?slug=optional
QueryString 参数:
slug
: string 可选
total
,则返回为总计点击量。{
"result": {
"slug": "total",
"pv": 10
}
}
P.S. 其中,GET 请求也可以访问,但仅当 PUT 请求时,会额外将访问计数累加。
GET /list?slugs=optional,optional
QueryString 参数:
slugs
: string 可选,请将 string[] 用,
分隔
{
"result": [
{
"slug": "total",
"pv": 10
},
// ...
]
}
LICENSE 【使用免费的|使用免费的 Cloudflare Workers 搭建 Serverless 站点计数服务】Apache License 2.0
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量