我知道使用 Chrome,我可以使用代码片段在网页上手动运行一些 JavaScript 代码。但这需要手动执行代码片段。有没有办法让我的浏览器(Chrome 或 Firefox)在每次访问新页面时加载一些 JavaScript 代码?
javascript userscripts google-chrome-extension firefox-addon-webextensions web-extension
我正在为我的公司构建一个内部扩展。由于它是一个内部工具,我不想将其发布到 Chrome 网上应用店。
\n为了能够自行托管浏览器扩展,我正在执行以下步骤:
\n(之前):\xc2\xa0我创建了一个 .pem 来签署扩展(+在更新中保持恒定的扩展 ID)
\n我正在构建源代码
\n我正在使用 chrome 打包并签署扩展chromium --pack-extension=./build_dir/ --pack-extension-key=./key.pem
我正在更新update.xml文件以反映新版本号
我上传了签名的.crx和update.xml
\n我有一个网站,其中有一个指向 .crx 文件的链接。\xc2\xa0 问题如下:单击该文件时,会下载该文件,并且 chrome 会认为它是浏览器扩展。然后:我收到“包无效 crx_required_proof_missing ”。
\n我缺少什么?
\n下载扩展程序后,我该怎么做才能安装自托管扩展程序?
\n笔记:
\n我知道我可以提取 .crx 内容并将扩展加载为“解压”,但这不是我想要的:部署将更加复杂(更多手动步骤)并且更新不会自动。
\n.crx 文件似乎具有正确的标头,并且可以公开访问。更新文件也是正确且可访问的。
\n信息:
\n是的,清单包含\xc2\xa0properties key和\xc2\xa0 update_url。
\n在 chrome://extensions 中拖放 .crx 文件时(在开发模式下):扩展程序已安装,但我在扩展卡上收到红色警告:“此扩展程序未在 Chrome Web Store 中列出,可能会在您不知情的情况下添加了”
\n在 chrome://extensions 中拖放 .crx …
google-chrome chromium google-chrome-extension web-extension
这是 v3 中 chrome 的最小扩展:
清单.json
{
"manifest_version": 3,
"name": "Test",
"version": "1.0",
"description": "Test extension",
"icons": {
"48": "dark.png"
},
"background": {
"service_worker": "button.js"
},
"permissions": [
"activeTab"
],
"action": {
"default_icon": "dark.png",
"default_title": "Test"
}
}
Run Code Online (Sandbox Code Playgroud)
按钮.js
chrome.action.onClicked.addListener(tab => {
console.log('clicked')
chrome.tabs.sendMessage(tab.id, { value: false })
});
Run Code Online (Sandbox Code Playgroud)
API在文档中看起来非常清楚。所以我不明白为什么当我按下插件按钮时,我会收到奇怪的错误:
extensions.js:4187 Uncaught TypeError: Failed to construct 'URL': Invalid URL
at ExtensionsErrorPageElement.onSelectedErrorChanged_ (extensions.js:4187:2827)
at Object.runObserverEffect [as fn] (polymer_bundled.min.js:1:37568)
at runEffectsForProperty (polymer_bundled.min.js:1:37087)
at runEffects (polymer_bundled.min.js:1:36604)
at ExtensionsErrorPageElement._propertiesChanged (polymer_bundled.min.js:1:52973)
at ExtensionsErrorPageElement._flushProperties …Run Code Online (Sandbox Code Playgroud) javascript plugins google-chrome google-chrome-extension web-extension
我正在开发一个 Manifest v3 浏览器扩展,我需要从后台脚本识别当前正在运行该扩展的浏览器。由于 ManifestV3 扩展使用 Service Worker,因此它没有 DOM 或window. 所以我无法使用window.navigator.userAgent.
我发现一个相关的问题讨论如何获取窗口高度和宽度信息,但我找不到任何其他信息来获取浏览器的 userAgent。
这可能吗?
firefox-addon google-chrome-extension firefox-addon-webextensions web-extension