2013-09-24 116 views
0

我正在構建擴展程序,並且試圖保持其結構良好。其中的一部分將使用某種類型的模板系統(小鬍子,把手等)。請注意,我已經意識到必須使用一個特定的非eval版本的圖書館。不能將xhr文件添加到Chrome擴展程序中

問題是,從app.js腳本(核心邏輯)內我不能XHR加載/模板(見下文)中的文件的內容。

load事件永遠不會觸發,當我使用onreadystatechange進行檢查時,立即跳轉到狀態4,狀態碼爲0.(狀態4和狀態200是我們想要的)。

獲取文件的Chrome網址,例如,

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" 
    } 
    ] 
} 

回答

1

你需要列出你想在你的清單中包含web_accessible_resources部分載入的文件。

+0

非常感謝。我老實說花了幾個小時來搜索,閱讀和試驗,我從來沒有看到這方面的參考。希望這對未來的人有用。 – Geuis

相關問題