gpt4 book ai didi

javascript - tabs.executeScript : Cannot access a chrome://URL

转载 作者:行者123 更新时间:2023-11-29 21:48:12 24 4
gpt4 key购买 nike

chrome.tabs.executeScript(null, { file: "jquery.js" }, function() {
chrome.tabs.update(null, {url: 'https://example.com/'});
});

当我的地址栏有内容时触发上面的代码,这意味着我在任何网页上,但是当我的地址栏为空白时触发时,我得到以下错误:

Unchecked runtime.lastError while running tabs.executeScript: Cannot access a chrome:// URL
at Object.callback

最佳答案

  • 通常(另见文档中的 Programmatic Injection)不可能将脚本注入(inject)带有 chrome:// 的选项卡中网址因为the allowed schemes<scheme> := '*' | 'http' | 'https' | 'file' | 'ftp' .

    在 v61 之前的 Chrome 中,仍然可以注入(inject)新标签页的内容框架,其中您提到的“空白地址栏”在内部表示为 chrome://newtab/ .例如主机的地址是这样的:https://www.google.com/_/chrome/newtab?espv=2&es_th=1&ie=UTF-8 (使用 devtools 中的网络面板检查 url)。所以你的 manifest.json会有 "permissions": ["tabs", "https://www.google.com/_/chrome/newtab*"],

  • 或者您可以启用 chrome://flags/#extensions-on-chrome-urls标记,但这几乎没有用,因为 Chrome 每次启动都会显示警告。

关于javascript - tabs.executeScript : Cannot access a chrome://URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30367313/

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