Manifest 之韵:插件的 “身份证”
如果把插件比作一个 APP,manifest 就是它的‘身份证’—— 记录着名字(name)、版本(version)、头像(icons)等基础信息,让浏览器一眼认出它;同时,它也是‘操作手册’—— 告诉浏览器‘我需要哪些权限’(permissions)、‘在哪里干活’(service_worker/background)、‘能调用哪些工具’(web_accessible_resources)。少了它,插件就成了‘黑户’,连浏览器的大门都进不去。
一份“优雅”的配置
{ "manifest_version": 3, "name": "My Extension", "version": "1.0.0", "icons": { "16": "icons/icon16.png", "48": "icons/icon48.png", "128": "icons/icon128.png" }, "description": "一款帮助你管理标签页的Chrome扩展", "default_locale": "en", "action": { "default_icon": { "16": "icons/icon16.png", "32": "icons/icon32.png" }, "default_title": "My Extension", "default_popup": "popup.html" }, "background": { "service_worker": "background.js" }, "content_scripts": [ { "matches": ["https://*.example.com/*"], "js": ["content.js"], "run_at": "document_end" } ], "permissions": [ "https://api.example.com/*", "tabs", "activeTab", "scripting", "storage", ] }
这时候你可能就要疑问了,这些配置都是干什么用的?咱们接着往下看。
配置详解
基础元信息 --- 必填
"manifest_version"
指定Manifest文件的版本,目前Chrome要求使用3。
"name"
扩展程序的名称,显示在Chrome扩展管理页面和商店中。
"version"
扩展程序的版本号。
视觉与本地化 --- 强烈推荐的配置项
"icons"
提供多尺寸图标资源,适配不同使用场景。"description"
简明扼要地描述插件功能,这将出现在扩展管理页面和应用商店中,是用户了解插件的第一印象。
"default_locale"
指定默认语言环境,可以配合 _locales
目录实现国际化支持。
"action"
用户交互配置,用于定义工具栏图标的外观与行为。
按需必选 --- 根据扩展功能需求添加
"service_worker"
持续运行的后台脚本,在 Manifest V3 中取代传统的 background scripts
,它按需运行,适用于监 听事件(如通知、消息传递、定时任务)等后台操作。
"content_scripts"
用于向匹配的网页注入 JavaScript 或 CSS,实现对页面内容的读取、修改与增强。
"permissions"
明确请求运行所需的权限,务必遵循“最小权限原则”,仅申请实际需要的权限。
常见的权限类型有
权限 | 说明 |
| 允许向指定域名发起网络请求 |
| 获取标签页列表、读取 URL、执行跳转等完整控制 |
| 临时授予对当前激活标签页的有限访问权(更安全) |
| 使用 |
| 使用 |
更多权限配置,可参考官方文档https://developer.chrome.com/docs/extensions/reference/permissions-list?hl=zh-cn
从零探索Chrome插件开发,手把手教你构建实用功能,开启浏览器扩展创作之旅。