web_accessible_resources的Chrome扩展清单问题(已阻止)

时间:2015-06-04 09:45:34

标签: javascript google-chrome-extension same-origin-policy

这是清单:

{
  "manifest_version": 2,

  "name": "JRBot Viz Extension",
  "description": "This extension will listen to a tab, then open the visualizer for the audio from that tab",
  "version": "1.0",
  "background":
    {
        "scripts": ["popup.js", "jquery-1.11.3.min.js"]
    },
  "browser_action": {
   "default_icon": "icon.png",
   "default_popup": "popup.html"
  },
  "web_accessible_resources": ["resources/*"],
  "permissions": [
   "activeTab",
   "http://*.google.com/",
   "https://*.googleapis.com/"
   ]
}

这是在单击扩展弹出窗口中的按钮时执行的脚本:

document.addEventListener('DOMContentLoaded', function() {
  var checkPageButton = document.getElementById('vizualizePage');
  checkPageButton.addEventListener('click', function() {

    chrome.tabs.getSelected(null, function(tab) {

        chrome.tabs.executeScript(null, {file: "jquery-1.11.3.min.js"});
        chrome.tabs.executeScript(null, {file: "addViz.js"});

    });

  }, false);
}, false);

以下是addViz.js脚本执行的内容:

d = document;     
var extUrl = chrome.extension.getURL("");

$('body').prepend('<div id="viz-div" style="background-color: #000; width: 100%; height: 100%; position: absolute; z-index: 100000;"></div>');
$('#viz-div').load(extUrl + 'resources/audio-circle.html');

所以,一切都按预期运行,直到它应该加载resources/audio-circle.html

控制台说: Denying load of chrome-extension://[EXTENSION ID]/resources/audio-circle.html. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.

如您所见,资源文件夹IS在清单中被声明为Web可访问,我通过在新选项卡中打开引用的URL确认位置是正确的,并且HTML文档出现。

我已尝试单独声明一个文件并删除通配符,但这并没有改变任何内容。

我还尝试将资源放在扩展根目录中,但仍然是相同的。

我已经耗尽了我在互联网上找到的关于web_accessible_resource的正确用法的所有资源(目前并不多),但我仍然无法找到解决方案。< / p>

我在这里出错的任何想法?

1 个答案:

答案 0 :(得分:-1)

关闭并重新打开Chrome会为我修复