相关疑难解决方法(0)

Chrome 扩展程序:无法访问以“chrome-extension://”开头的 URL 内容

在我的扩展中,我创建一个选项卡,并results.html从名为 的后台脚本打开一个在其中命名的 html 文件background.js。创建选项卡后,我将注入一个名为results.js该新创建的选项卡的 JavaScript 文件。

但它在我的控制台中抛出以下错误background.js

Unchecked runtime.lastError: Cannot access contents of url "chrome-extension://hcffonddipongohnggcbmlmfkeaepfcm/results.html". 
Extension manifest must request permission to access this host.
Run Code Online (Sandbox Code Playgroud)

浏览其他 stackoverflow 问题的解决方案时,我尝试在以下位置添加以下权限manifest.json

  1. <all_urls>
  2. chrome-extension://*抛出错误:权限“chrome-extension://*”未知或 URL 模式格式错误。

但以上都不起作用。

此外,results.js注入后应该发送消息以background.js获取响应一些数据以供输入results.html

我的代码:

清单.json

{
  "manifest_version":2,
  "name":"Extension Name",
  "description":"This is description of extension.",
  "version":"1.0.0",
  "icons":{"128":"icon_128.png"},
  "browser_action":{
      "default_icon":"icon.png",
      "default_popup":"popup.html"
  },
  "permissions":["activeTab", "background", "tabs", "http://*/*", "https://*/*","<all_urls>"],
  "background": {
      "scripts": ["background.js"],
      "persistent": false
  },
  "web_accessible_resources": …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome google-chrome-extension

7
推荐指数
1
解决办法
9655
查看次数

发送消息到后台页面,更新html,然后在选项卡中显示

我有一个 chrome 扩展,用户输入一些信息并生成报告。当然,现在该报告每次都会根据用户输入的内容而有所不同。

我想要实现的目标是让我的扩展说:

嘿,背景页先生。这是您需要的信息,现在根据我给您的信息构建一些 html 并将其显示给用户。

这是manifest.json我正在使用的:

{
  "manifest_version": 2,

  "name": "XXXX",
  "description": "XXXX",
  "version": "1.0.0",
  "permissions": ["storage", "tabs"],
  "options_page": "settings.html",

  "background":
  {
    "page": "background.html"
  },

  "content_scripts":
  [
    {
      "matches": ["<all_urls>"],
      "js": ["js/jquery-3.1.1.min.js", "js/bootstrap.min.js", "js/main.js", "js/background.js"],
      "css": ["css/bootstrap.min.css", "css/font-awesome.min.css"]
    }
  ],

  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "icons": { "128": "logo.png" }
}
Run Code Online (Sandbox Code Playgroud)

这是我的background.html

<html>
<body>
    <script src="js/jquery-3.1.1.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/background.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是我的background.js

$(document).ready(function() {
    chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
        $("body").html(msg.message);
        console.log("Message from: …
Run Code Online (Sandbox Code Playgroud)

html javascript google-chrome-extension

2
推荐指数
1
解决办法
1130
查看次数