给博客动态页接 Ech0:一条代理链路和几个绕不开的坑
动态页的数据源从 Memos 换成自部署的 Ech0。这篇记录整条数据链路:为什么走服务端同源代理而不是前端直连、echo/query 的分页怎么收尾、Markdown 和扩展卡片分别在哪一层渲染,以及实际踩到的几个坑——服务端 pageSize 钳位、时间戳是秒不是毫秒、匿名请求拿不到私密说说、推文嵌入被墙的降级方案。
通过 Atom 订阅,第一时间获取最新文章和动态
复制链接到你的 Atom 阅读器
https://b.kemeow.top/atom.xml动态页的数据源从 Memos 换成自部署的 Ech0。这篇记录整条数据链路:为什么走服务端同源代理而不是前端直连、echo/query 的分页怎么收尾、Markdown 和扩展卡片分别在哪一层渲染,以及实际踩到的几个坑——服务端 pageSize 钳位、时间戳是秒不是毫秒、匿名请求拿不到私密说说、推文嵌入被墙的降级方案。
给博客写了个自定义右键菜单:所有菜单项走配置文件,右键位置和页面能力不同,菜单内容跟着变,Ctrl+右键还能唤出原版菜单。文章按「拦截、感知、定位」三条线讲实现思路,顺带记录三个排查起来很折磨的坑——Stylus 嵌套少写一个 &、布尔守卫写反、dev 正常但 preview 跑的是旧构建。
给博客接入了 swpp——一个规则驱动、把「精确控制缓存」当主业、把离线当副产品的 Service Worker 方案。文章先讲清楚它那套有点反直觉的缓存协议(false 不缓存、-1 永久缓存、版本号驱动失效),再展示双端 matchCacheRule 与构建编排,最后复盘六个集成期真实踩到的坑:saveFiles 撞上已存在文件、HTML 注入要求结构完整的 head、runOnBrowser 的序列化函数不能碰闭包、永久缓存的名不副实、HTTP 缓存头不配合版本检查失灵,以及 Service Worker 永远慢半拍的验证节奏。
给博客文章加 AI 摘要的记录:本地脚本调硅基流动 Qwen3-8B 生成 50~100 字摘要写进 frontmatter,前端用 Svelte 5 写了个带打字机动画和窄屏折叠的组件。文章按「数据从哪来、前端怎么展示」两条线讲,顺带记录了折叠裁切、dev 缓存、离线图标几个坑。
给博客做国内外分流,把国内用户 302 到 EdgeOne 子域。文章记录了双端部署的完整思路,以及备案限制、CNAME、重定向规则、强制 HTTPS 这一路上的坑。
当前页面没有目录
当前页面没有目录
当前页面没有目录