笔记 / 2026-10-23
JSON Feed 与子路径媒体
在 RSS 之外增加 JSON Feed,并记录 GitHub Pages 子路径下媒体、canonical 与检查脚本的注意事项。
为什么加 JSON Feed
RSS 适合阅读器,JSON Feed 更适合脚本与前端消费。新增 /feed.json,合并项目与笔记,最多 20 条,并在页面 head 声明 application/feed+json。
子路径
部署在 https://guidchen.github.io/dsh-personalnet/ 时,所有站内 URL 必须带 BASE_PATH:
- 媒体
/media/projects/...由组件补 base; - canonical / JSON Feed 的绝对地址由
absoluteUrl生成; check-dist与check-budget支持BASE_PATH,避免把子路径误判为缺失资源。
校验
构建后检查 feed.json 的 version 与条目数;RSS 仍保留,二者互不替代。子路径构建再跑一次 check-dist,可以提前发现只在 GitHub Pages 出现的 404。
实现索引
src/pages/feed.json.ts:Feed 生成与 Content-Type。src/lib/seo.ts:absoluteUrl / toDate 子路径处理。scripts/check-dist.mjs:Feed 条目与 version 校验。