chrome.tabs.executeScript发生错误"运行tabs.executeScript时未经检查的runtime.lastError:无法访问url的内容..."

Sid*_*Sid 14 google-chrome-extension

所以我试图在background.js中从www.script.google.com等外部源执行脚本.但我得到这个错误 -

Unchecked runtime.lastError while running tabs.executeScript: Cannot access contents of url "chrome-devtools://devtools/bundled/devtools.html?&remoteBase=https://chrome…&dockSide=undocked&toolbarColor=rgba(223,223,223,1)&textColor=rgba(0,0,0,1)". Extension manifest must request permission to access this host.
Run Code Online (Sandbox Code Playgroud)

我正在做的是从popup.js发送消息到background.js在popup.js -

 chrome.runtime.sendMessage({type:"addtask"});
Run Code Online (Sandbox Code Playgroud)

在background.js中 -

chrome.runtime.onMessage.addListener(function(request, sender, sendResponse){
    if(request.type == "addtask")
    {
        chrome.tabs.executeScript(null,
                       {file:"https://script.google.com/url of script....."});
    }
});
Run Code Online (Sandbox Code Playgroud)

我的清单.json-

{
    "name": "Extension",
    "version": "0.0.1",
    "manifest_version": 2,
    "browser_action": {
        "default_popup": "popup.html"
    },
     "background": {
        "scripts": ["background.js"],
        "persistent": false
    },
    "content_scripts": [{
        "js": ["jquery.min.js","contentscript.js"],
        "matches": ["http://*/*","https://*/*"],
        "css" : ["feedback.css"]
    }],
    "permissions": [
          "storage","tabs","https://script.google.com"
        ],
    "web_accessible_resources": ["feedback.js","html2canvas.js","event.js"],
    "content_security_policy": "script-src 'self' https://script.google.com/*; object-src 'self'"
}
Run Code Online (Sandbox Code Playgroud)

Hel*_*rld 18

平直.添加*://*/*权限.

  • 谁能解释一下,这和 <all_urls> 一样吗?我只是想在当前检查的窗口上获取数据,此权限使我能够执行此操作,但我不想要求用户提供看似可怕的权限。 (3认同)
  • 这是令人难以置信的。经过数小时的研究,我发现我的许可 URL 是错误的:缺少尾随星号符号,因此它只匹配主页。Chrome上次错误有点误导,因为它审查了我试图用“data:text/html,chromewebdata”访问的网址 (2认同)
  • 为什么教程的文档中没有这个?https://developer.chrome.com/extensions/getstarted (2认同)