Eva*_*van 17 google-chrome google-chrome-extension
假设我的扩展名中存有一个名为settings.json的JSON文件.我可以使用以下方法获取文件的URL:
chrome.extension.getURL("settings.json");
Run Code Online (Sandbox Code Playgroud)
但是现在我有了URL,我如何实际加载该文件的内容,以便我可以JSON.parse并使用它?我这样做的原因是有一个服务器组件,我想更容易地在多个服务器上进行部署和测试(开发,登台,生产等).或者,如果有办法向清单添加自定义属性. json并访问它们,这也可行.
ser*_*erg 25
如果你使你的setting.js看起来像:
var settings = {"param":value,...};
Run Code Online (Sandbox Code Playgroud)
然后,您可以将其包含在后台页面上并使用设置变量:
<script src="settings.js"></script>
Run Code Online (Sandbox Code Playgroud)
如果你想在你的文件中使用纯json而不将其分配给任何变量,那么你可以使用XMLHttpRequest加载它:
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = handleStateChange; // Implemented elsewhere.
xhr.open("GET", chrome.extension.getURL('/config_resources/config.json'), true);
xhr.send();
Run Code Online (Sandbox Code Playgroud)
或者如果你将jquery包含在你的项目中:
$.getJSON(chrome.extension.getURL('/config_resources/config.json'), function(settings) {
//..
});
Run Code Online (Sandbox Code Playgroud)
(chrome.extension.getURL仅当您从内容脚本访问文件时才需要使用btw ,否则您只能使用相对路径/config_resources/config.json)
| 归档时间: |
|
| 查看次数: |
12404 次 |
| 最近记录: |