加载扩展中的页面时出错err_file_not_found错误

时间:2014-06-02 13:14:13

标签: javascript google-chrome google-chrome-extension

我正在尝试将选项卡的相同链接加载到弹出窗口中(这不是我的主要目的,我这样做只是为了熟悉)我收到错误

Failed to load resource: net::ERR_FILE_NOT_FOUND

我的js文件如下

var pageGenerator = {
    requestPage: function() {
        var urlTosearch;
        chrome.windows.getCurrent(function(w) {
            chrome.tabs.getSelected(w.id,
            function (response){
                urlTosearch = response.url;
            });
        });
        var req = new XMLHttpRequest();
        req.open("GET", urlTosearch, true);
        req.onload = this.loadPage_.bind(this);
        req.send(null);
    },
    loadPage_: function (e) {
        var resp = e.target.responseText;
        document.body.insertAdjacentHTML( 'beforeend', resp);
    }
};
document.addEventListener('DOMContentLoaded', function () {
   pageGenerator.requestPage();
});

我已经读过外部页面无法加载到弹出窗口中。是这样吗?如果是真的么?如果不能怎么做呢?

2 个答案:

答案 0 :(得分:2)

收到无法加载资源时:net :: ERR_FILE_NOT_FOUND ,您可能没有正确定义您的网址。由于我没有在你的代码中看到你的网址,而且我看不到接受的答案,我会分享我认为错误的内容。

首先,您必须使用以下内容定义您在清单中发布的网址:

"permissions": [
  "http://www.yoururl.com/"
],

通过以下方式致电您的api时:yoururl.com/ chrome扩展程序不会调用api。只是因为它认为url在本地扩展了你的扩展范围。要解决此问题,您必须定义http://www。或https://www。现在,Chrome会识别您尝试从扩展程序外部加载某些内容。

答案 1 :(得分:-1)

尝试使用Active Tab权限 FROM A BACKGROUND脚本 ,以获取当前页面的网址。然后使用chrome.tabs.create()打开具有相同网址的新标签页。

详细信息:https://developer.chrome.com/extensions/activeTab