我的扩展程序中有大约350行静态JSON数据。该数据用于内容脚本,并且需要所有这些数据。它是键值对的列表。每当用户点击页面时,如果它们与条件匹配并且执行了适当的操作,则检查所有键。类似的东西:
{
"ABC": 323.32,
"BDS": 23.12,
"GTO": 96.52
}
最好把它放在哪里?我提出了三个想法:
我知道localStorage
并且我已经看过Chrome的各种其他类型的存储空间。但是,它们似乎是用于在用户使用扩展程序执行操作时生成的数据。
我的数据是静态的。安装扩展程序后,它不会更改。也就是说,直到扩展程序收到更新并最终修改 。
目前,数据位于内容脚本中。我认为这并不好,因为每次打开页面时它都会被加载,而它根本不会发生变化。因此,事件页面似乎更合适。 但是,此类数据是否有设计?
答案 0 :(得分:4)
您可以使用XHR或fetch检索它。使用chrome.extension.getURL
获取文件的网址。
这应该有效:
fetch(chrome.extension.getURL('/data.json'))
.then((resp) => resp.json())
.then(function (jsonData) {
console.log(jsonData);
});
你还必须将它添加到你的manifest.json:
"web_accessible_resources": [
"data.json"
],