Chrome 的 Manifest V3(MV3)不仅仅是 API 更新------它改变了扩展的运行时模型。 后台逻辑运行在事件驱动的扩展服务工作者(SW)中,可能在空闲时被关闭, 权限更加明确,并且请求修改促使你向声明式规则靠拢。
这本快速参考指南是为需要可靠、可粘贴使用的代码片段及其背后的思维模式的工作工程师所写的------无需每次阅读完整文档。
本书是什么:
-
以手机/Kindle 优先的参考手册:短小的部分,扫描式的标题,尽量减少冗余
-
实用的 MV3 指南:目的 → 使用时机 → 最小示例代码 → 需要注意的问题 → 检查清单
-
可重复使用的模式集:服务工作者路由、以存储为主的状态、健壮的消息传递
本书不是什么:
-
从零开始的完整 MV3 教程
-
官方文档的替代品(每个部分都提供了链接)
-
承诺每个代码片段在未经修改的情况下即可用于生产环境 假设条件:
-
您可以阅读 JavaScript 和 JSON
-
您正在构建 Chrome 扩展程序(MV3),并且希望在 SW 挂起状态下保持稳定的行为
-
您关心发布和通过审核(权限、安全性和用户体验)
如何获取最大价值:
-
如果您是从 MV2 迁移或您的 SW "随机停止工作",请从基础知识部分开始。
-
当您需要最小示例和常见的陷阱时,可以直接跳转到某个 API 部分。
术语与约定
本书将一致使用以下术语:
-
服务工作者(Service Worker,简称 SW) Manifest V3 扩展的后台运行时。所有后台逻辑都运行在事件驱动的扩展服务工作者中。
-
后台 仅指概念角色。在 MV3 中,"后台"由服务工作者实现,而不是持久页面。
-
扩展页面 弹出窗口、选项页面、侧边栏等 UI 表面。
-
内容脚本 注入到网页中、运行于隔离世界的脚本。
-
Port(端口) 通过 runtime.connect 或 tabs.connect 创建的长生命周期消息通道。
本书中所有关于时间、生命周期与关闭行为的描述,均基于文档与常见观察,不构成硬性保证。
如何使用此快速参考
-
以手机优先的方式阅读:短行,可扫描的标题。
-
每个 API 部分: 目的 → 使用时机 → 最小示例 → 常见问题 → 核查表