gpt4 book ai didi

javascript - Chrome 扩展 - 将文件从本地主机加载到 content_scripts

转载 作者:行者123 更新时间:2023-11-29 21:40:57 25 4
gpt4 key购买 nike

我正在开发 Chrome 扩展,我需要将 javascript 文件加载到内容脚本,但该文件是通过 webpack-dev-server 提供的。所以它只能在本地主机上使用。

我尝试更改我的 manifest.json:

"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": [
"http://localhost:3000/scripts/content_bundle.js"
],
"run_at": "document_end",
"all_frames": false
}

但后来我在 Chrome 扩展程序窗口中收到错误消息:

enter image description here

最佳答案

"content_scripts" 部分只能指定本地文件。

解决方案:

  • 添加 "permissions": ["http://localhost:3000/scripts/*", "tabs"] 到 manifest.json
  • 在您的 background script 中使用 XMLHttpRequest(有很多示例)下载脚本(或更好的 an event page script )在需要时
  • 将其保存在 chrome.storage.locallocalStorage 中(这样您就可以在从存储开始的每个扩展程序上加载它而无需重新下载)
  • 注入(inject)脚本:
    • 添加 tabs.onUpdated监听器并使用 tabs.executeScript 注入(inject)脚本
    • 或者使用declarativeContent具有 RequestContentScript 操作的 API(尽管文档页面上有警告,它实际上应该在稳定 channel 中得到支持,但当然要先做一些测试)。

关于javascript - Chrome 扩展 - 将文件从本地主机加载到 content_scripts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32960924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com