在 Web 扩展上工作可能有点疯狂——一方面你基本上只是在编写一个网站,另一方面你受限于浏览器所说的你可以在扩展执行环境中做的事情。 2023 年 1 月将在这种环境中发生一个变化——推动扩展迁移到清单版本 3。我最近很好奇其他流行的扩展是否已经完成了版本 3 的更新。
在后台页面(清单版本 2)或服务工作者(版本 3)中执行以下命令将为您提供扩展的清单:
chrome.runtime.getManifest()
getManifest
调用返回一个详细说明扩展清单的大对象。这是您在 MetaMask 浏览器扩展中看到的内容:
{ "作者": "https://metamask.io", “背景”: { “页面”:“背景.html”, “持久”:真的 }, “浏览器操作”:{ “默认图标”:{ "16": "图片/icon-16.png", "19": "图片/icon-19.png", "32": "图像/icon-32.png", "38": "图像/icon-38.png", "64": "图片/icon-64.png", }, "default_popup": "popup.html", “default_title”:“元掩码” }, “命令”:{ “_execute_browser_action”:{ “建议密钥”:{ "chromeos": "Alt+Shift+M", "linux": "Alt+Shift+M", "mac": "Alt+Shift+M", “窗口”:“Alt+Shift+M” } } }, “内容脚本”:[ { “all_frames”:是的, “js”:[ “禁用-console.js”, "globalthis.js", “锁定-install.js”, “锁定运行.js”, "lockdown-more.js", “内容脚本.js” ], “火柴”: [ “文件://*/*”, "http://*/*", “https://*/*” ], “run_at”:“document_start” } ], "current_locale": "en_US", "default_locale": "en", "description": "浏览器中的以太坊钱包", “外部连接”:{ “身份证”:[ “*” ], “火柴”: [ “https://metamask.io/*” ] }, “图标”:{ "16": "图片/icon-16.png", "19": "图片/icon-19.png", "32": "图像/icon-32.png", "38": "图像/icon-38.png", "48": "图像/icon-48.png", "64": "图片/icon-64.png", }, “清单版本”:2, "minimum_chrome_version": "66", “名称”:“元掩码”, “权限”:[ “贮存”, “无限存储”, "剪贴板写", "http://localhost:8545/", "https://*.infura.io/", "https://lattice.gridplus.io/*", "活动标签", "网络请求", "*://*.eth/", “通知” ], "short_name": "MetaMask", "update_url": "https://clients2.google.com/service/update2/crx", “版本”:“10.16.1” }
许多网络扩展仍在使用清单版本 2,因此许多扩展开发人员正在推动完成清单版本 3 的工作!
如何获取扩展清单信息的帖子首先出现在David Walsh 博客上。