在cookie中存储/检索javascript文件对象
我将文件列表存储在cookies中,这样,如果我导航到另一个页面并返回到此页面,我需要用户以前选择的所有文件。 这段代码是我用来将数据存储在cookies中的在cookie中存储/检索javascript文件对象,javascript,jquery,angularjs,cookies,file-upload,Javascript,Jquery,Angularjs,Cookies,File Upload,我将文件列表存储在cookies中,这样,如果我导航到另一个页面并返回到此页面,我需要用户以前选择的所有文件。 这段代码是我用来将数据存储在cookies中的 if(!angular.isUndefined(filelist)) { $cookies.filelist = JSON.stringify(filelist).toString(); } 下面是我用来从用户选择的文件创建filelist对象的代码
if(!angular.isUndefined(filelist)) {
$cookies.filelist = JSON.stringify(filelist).toString();
}
下面是我用来从用户选择的文件创建filelist对象的代码
$('#fileupload').on('fileuploadadd', function (e, data) {
for(var i = 0; i < data.files.length; i++){
filelist.push(data.files[i])
}
});
当我存储此文件列表对象时,它是“文件”类型,当我检索时,它是“对象”。如何将我的对象类型转换为文件对象?这是我采用的正确方法吗?您最好在服务器上设置一个文件结构来存储文件,然后使用数据库来存储文件的URL,在将URL添加到数据库时,您还可以将URL添加到cookie或会话变量中,因此,当您返回页面时,您拥有指向文件的所有url。我不明白你为什么需要实际的文件对象本身。这仅由
用于上载到磁盘 恐怕你不能做你想做的事。那么请指导我……那我该怎么办?我可以从Cookie中获取数据,但它是一个简单的对象,我希望它是文件类型对象。我不认为你可以让浏览器以任何方式保存用户选择的文件引用。JSON并不是一种通用的序列化机制——所发生的一切就是它正在保存文件对象的简单属性。您不能将它们转换回文件对象。那么我如何实现此功能?有什么解决方法吗?我在项目中使用angularjs,jquery文件上载。
if($cookies.filelist != null && $cookies.filelist != 'undefined' && $cookies.filelist != 'null') {
filelist = $.merge(filelist,JSON.parse($cookies.filelist));
}