每天 60 秒读懂世界 API
·2 分钟·646 字·请注意时效性
#背景
前阵子挺热衷玩 QQ 机器人,经常会找一些第三方 API 对接数据,搭配 oicq 协议库实现一些简单功能,乐呵乐呵群友,也算有点意义。
其中比较有代表性的功能就是「每天 60 秒读懂世界」。每天十来条简短的热点新闻,功能虽简单,内容却挺实用,特别是对于我们这种从来不看新闻的人来说。
#为什么要自己搭建
问题在于,很多第三方 API 服务都不够稳定,间歇性挂掉甚至直接跑路。
于是我 Google 了一圈,发现绝大多数接口的数据来源都指向知乎的「每天 60 秒读懂世界」专栏。既然数据源头在这里,为什么不直接从源头拿数据呢?
#技术实现
经过一顿操作(说白了就是打开 F12,找到专栏数据接口),发现知乎的专栏接口非常友好,没有任何加密、跨域或请求头限制:
https://www.zhihu.com/api/v4/columns/c_1261258401923026944/items
接口参数:
limit:返回的数据条数offset:分页偏移量
拿到数据后,我用 Deno 搭建了一个高性能 API 服务,并部署到 Deno Deploy。为了提升性能和减轻知乎服务器压力,我做了以下优化:
- 智能缓存:每天只向知乎发起一次请求,后续请求直接使用缓存
- 数据过滤:每次只返回当天的最新数据
- 低延迟响应:利用边缘计算节点,全球访问延迟极低
#使用方式
这里提供一个已部署好的 API 地址,可以直接使用:
V1 版本(已停止更新):
- JSON 格式:https://60s.viki.moe
- 纯文本格式:https://60s.viki.moe?encoding=text
- V2 格式:https://60s.viki.moe?v2=1
#V2 版本正式发布
60s API V2 已正式发布,地址:https://60s.viki.moe
新版特性:
- 新增更多实用、有趣的接口
- 完善的 API 文档(托管在 Apifox)
- 支持多种部署方式:Docker、Deno、Bun、Node.js
迁移提醒: V1 版本已于 2025 年 1 月 15 日停止更新,代码保留在 v1-legacy 分支。V1 服务将于 2025 年 6 月 30 日完全停止,届时域名将切换至 V2 版本。请尽快迁移到 V2 版本。
源码地址:vikiboss/60s - GitHub,欢迎 Star~
—— 本文完 ——