Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在cookie中存储/检索javascript文件对象_Javascript_Jquery_Angularjs_Cookies_File Upload - Fatal编程技术网

在cookie中存储/检索javascript文件对象

在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对象的代码

我将文件列表存储在cookies中,这样,如果我导航到另一个页面并返回到此页面,我需要用户以前选择的所有文件。 这段代码是我用来将数据存储在cookies中的

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));
                }