Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';Chrome扩展名中的t xhr文件_Javascript_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript Can';Chrome扩展名中的t xhr文件

Javascript Can';Chrome扩展名中的t xhr文件,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在构建一个扩展,并试图保持它的良好结构。它的一部分将使用某种类型的模板系统(胡子、把手等)。请注意,我已经意识到必须使用我所使用的任何库的特定非评估版本 问题在于,在app.js脚本(核心逻辑)中,我无法通过XHR将文件内容加载到/templates中(见下文) load事件从不激发,当我使用onreadystatechange检查时,它立即跳到状态4,状态代码为0。(状态4和状态200是我们想要的) 获取文件的Chrome url是有效的,例如 chrome.extension.getUR

我正在构建一个扩展,并试图保持它的良好结构。它的一部分将使用某种类型的模板系统(胡子、把手等)。请注意,我已经意识到必须使用我所使用的任何库的特定非评估版本

问题在于,在app.js脚本(核心逻辑)中,我无法通过XHR将文件内容加载到/templates中(见下文)

load事件从不激发,当我使用onreadystatechange检查时,它立即跳到状态4,状态代码为0。(状态4和状态200是我们想要的)

获取文件的Chrome url是有效的,例如

chrome.extension.getURL('templates/view1.html')
//chrome-extension://hdhpjlpbepobcdgnkklnakdpoojaahjg/templates/view1.html 
我怀疑manifest.json中有什么配置不正确。我已经阅读了CSP文档,但是没有任何东西能让我明白为什么应该拒绝访问扩展本地文件。请注意,XHR请求不会抛出错误,它们只是从不返回数据

应用程序的结构如下所示:

/manifest.json
/src
    app.js
    style.css
/libs
    jquery.js
    mustache.js

/templates
    view1.html
    view2.html
Manifest.json

{
  "name": "Test Extension",
  "version": "0.0.1",
  "manifest_version": 2,
  "icons": {
//    "16": "",
//    "48": ""
//    "128": ""
  },
//  "default_locale": "en",
  "permissions": [
    "contentSettings",
    "http://*/*",
    "https://*/*"
  ],
  "content_scripts": [
    {
      "matches": [
        "https://www.google.com/search*"
      ],
      "css": [
        "src/style.css"
      ],
      "js": [
        "src/app.js",
        "libs/jquery.js",
        "libs/mustache.js"
      ],
      "run_at": "document_start"
    }
  ]
}

您需要在清单的某个部分列出要加载的文件。

非常感谢。老实说,我花了好几个小时搜索、阅读和实验,从没有看到有人提到这一点。希望这对未来的人们有用。