我使用JavaScript XHR从服务器下载视频(特别是Angular $ http GET,响应类型' blob')
我应该如何将其保存到Chrome应用程序的本地存储?
目前在HTML5文件系统API https://github.com/maciel310/angular-filesystem
上使用Angular包装器writeFileInput: function(filename, file, mimeString) {
var def = $q.defer();
var reader = new FileReader();
reader.onload = function(e) {
var buf = e.target.result;
$timeout(function() {
fileSystem.writeArrayBuffer(filename, buf, mimeString).then(function() {
safeResolve(def, "");
}, function(e) {
safeReject(def, e);
});
});
};
reader.readAsArrayBuffer(file);
return def.promise;
}
这是保存文件的代码。但这是在从输入接收文件时设计的。由于我没有从输入中接收此文件,因此无效(具体为readAsArrayBuffer()
。
显示错误为
TypeError: Failed to execute 'readAsArrayBuffer' on 'FileReader': parameter 1 is not of type 'Blob'.
答案 0 :(得分:1)
我只想通过D:\andriod_sdk
您将要使用File System Api
我知道你说你想要localStorage
,但如果你试图存储视频,很可能你没有足够的空间。
This answer relates this this problem
请看这个 答案
localStorage
这是存储到本地存储的重要方法。