每日运势
基于 Cloudflare Pages Functions 的老黄历与星座运势查询站,支持一键部署,附带完整 RESTful API 与智能缓存。
可一键部署的老黄历查询站,含完整 API 端点、缓存层与降级兜底。
这个项目的起点很简单:想要一个干净的老黄历查询入口。
市面上能查到老黄历和星座运势的网站不少,但几乎都被广告和推荐流覆盖,信息密度极高,却没有一个是真正”查完就走”的轻量入口。我想要的是:打开、查到、关掉,仅此而已。
我做的关键产品判断
1. API 层和展示层分开
从一开始就决定不把数据获取逻辑混在页面渲染里。每个查询能力都对应一个独立的 API 端点——老黄历、星座运势各自一条路。
这样做的意义不只是代码整洁,而是端点可以被独立复用:其他项目需要接入老黄历数据,直接调这些端点就行,不必再重复接三方 API。
2. 用 Cloudflare Pages Functions 替代独立后端
维护一个独立服务器只是为了转发几个 API 请求,成本和收益完全不成比例。
Cloudflare Pages Functions 让逻辑跑在 CDN 边缘,部署成本接近零,冷启动几乎可以忽略。整个项目只需要一个仓库,推送代码就完成部署,没有服务器需要管理。
3. 缓存层 + fallback 兜底
老黄历数据按天变化,没有必要每次请求都去打三方 API。缓存层把同一天内的重复请求拦在本地,减少外部调用,也让响应更稳定。
fallback 兜底是另一个判断:三方 API 不可能 100% 可靠,一旦挂掉,页面应该降级展示保底内容,而不是直接报错。任何情况下用户都应该能看到有用的信息。
这个项目的结果
目前已部署上线,支持一键部署到 Cloudflare Pages、Vercel、Netlify 等主流平台。完整的 API 端点、缓存策略和 fallback 逻辑都已经在生产环境跑通。
对我来说,这个项目更重要的价值是验证了一种产品模式:把一个轻量需求做干净,API 层和展示层分离,部署门槛尽量低。这套思路可以被复用到任何类似的工具站上。