我有一个chrome扩展程序,可以将大量数据保存到chrome.storage.local。我试图找到导出此数据并将其打包到文件中的简单方法。我不限制它是什么类型的文件(JSON,CSV,等等),我只需要能够将内容导出到独立(和可发送)文件中。该扩展仅在本地运行,用户可以访问所有本地文件。
答案 0 :(得分:14)
首先,您需要获取所有数据
然后序列化结果。
最后,将其作为下载提供给用户。
chrome.storage.local.get(null, function(items) { // null implies all items
// Convert object to a string.
var result = JSON.stringify(items);
// Save as file
var url = 'data:application/json;base64,' + btoa(result);
chrome.downloads.download({
url: url,
filename: 'filename_of_exported_file.json'
});
});
要使用chrome.downloads.download
方法,除了清单文件中的"downloads"
权限外,还需要声明storage
权限。
答案 1 :(得分:1)
你应该看一下:https://groups.google.com/a/chromium.org/forum/#!topic/chromium-extensions/AzO_taH2b7U
它显示将chrome本地存储导出为JSON。
希望有所帮助