我正在开始一个项目,我需要编写Chrome扩展程序,该扩展程序必须能够脱机运行并再次在线同步。所以我想知道Chrome扩展程序是否有任何意义下载文件并保存本地而不提示用户输入每个文件(文件数量可能相当大)
我已经看过chrome.storage模块,它可以做类似的事情,但是如果有很多文件,我担心性能。所以如果你有关于性能的一些信息,我也很感兴趣。
编辑我使用Chrome的文件系统功能测试过,这是我的来源:
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
function onError(e) {
console.log('Error', e);
}
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://upload.wikimedia.org/wikipedia/fr/2/26/10_francs_Mathieu_1987_F365-28_revers.jpg', true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
window.requestFileSystem(PERSISTENT, 1024 * 1024, function(fs) {alert(fs.root.name);}, onError);
window.requestFileSystem(PERSISTENT, 1024 * 1024, function(fs) {
fs.root.getFile('image.jpg', {create: true}, function(fileEntry) {
fileEntry.createWriter(function(writer) {
writer.onwrite = function(e) {};
writer.onerror = function(e) {};
var blob = new Blob([xhr.response], {type: 'image/jpeg'});
writer.write(blob);
}, onError);
}, onError);
}, onError);
};
xhr.send();
它似乎有用,但我无法在任何地方看到我的文件。我为保存路径尝试了一些其他的东西,比如提供绝对路径,但没有成功。有什么想法吗?