Skip to content

v0.9.1 — WordPress.com 评论框终于能加载出来了

Choose a tag to compare

@codeugar codeugar released this 12 Aug 04:03
· 5 commits to main since this release
b90656e

跑批时 WordPress.com 站点整批失败的问题修好了。以前面板上报 VERBUM_COMMENT_FORM_TIMEOUT(显示「无表单」)或 PAGE_COMMAND_TIMEOUT(显示「失败」),一条外链都拿不到。

修了什么

WordPress.com 的评论框永远等不到(两种报错,同一个原因)

以前:扩展新开的工作标签页是后台开的,你人在看仪表盘,那个页面从头到尾没被显示出来。而 WordPress.com 的评论框不是随页面一起出来的,页面里只有一个空壳子,真正的输入框和按钮要等浏览器真的在画这个页面的时候才挂上去——它靠 IntersectionObserver 检测评论区是否进入可视区来决定下不下载那段代码。后台标签页不绘制,这个检测一次都不会触发。

所以「滚到评论区 + 等 60 秒」这套做法,在后台标签页里等多久都没用。实测:页面开了 243 秒,requestAnimationFrame 不触发、IntersectionObserver 不回调、评论框壳子始终是空的。等待时间还把整条命令的 75 秒上限撑爆,于是同一个问题分裂成了两种报错。

现在:扩展直接调用页面自己的脚本注册表把那段代码要过来,不再依赖「页面被看到」这个前提。在隐藏标签页里实测五个站点,评论框在请求后 1~2 秒挂出来。既然不用再干等,等待窗口也跟着收紧:预检 60 秒 → 30 秒,页内等待 60 秒 → 15 秒。一次分析的最坏耗时从约 135 秒降到约 58 秒。

评论明明发出去了,却显示「提交结果未确认」

以前:WordPress.com 开了订阅弹框的站点,提交评论后页面不跳转——它在后台把评论提交掉,然后弹一个让你填邮箱订阅的小框,把带评论编号的回执地址扣在手里,等你关掉框才跳过去。扩展拿不到回执,只能一直等到超时报「未确认」。实际发生过的情况:一条评论在目标站上确确实实已经公开显示(编号 comment-78757,外链完好),面板上却记成未确认。

现在:提交后如果出现这个订阅框,扩展点一下它自己的关闭按钮(「Continue reading」),Verbum 就会跳到刚发出的那条评论,回执照常拿到。邮箱输入框和订阅按钮一个都不碰,不会替你订阅任何东西。

慢站点被误判成「打不开」

后台标签页的请求会被 Chrome 降低优先级,实测这些博客要 15~40 秒才能把页面提交出来。原来 30 秒就放弃,把正常的慢加载记成了打不开的页面。现在放宽到 60 秒。

看板里选中的方案会跳回上一个

点某个方案,界面有时会弹回之前选中的那个。路由地址和组件内部各存了一份「当前选中哪个方案」,而地址要经过一个异步事件才传到界面,中间有机会被旧值覆盖。现在只保留路由这一个来源,切换即时生效。

安装

下载 comment-link-assistant-extension-0.9.1-chrome.zip 解压,在 chrome://extensions 打开开发者模式,「加载已解压的扩展程序」选解压出来的目录。扩展 ID 是固定的(gmdfkglpanbbilahmjfhmekegphloicl),覆盖安装不会丢数据。


Full Changelog: v0.9.0...v0.9.1