Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.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
Javascript Blueimp文件上载程序-Chrome文件夹上载限制_Javascript_Jquery_Google Chrome_File Upload_Blueimp - Fatal编程技术网

Javascript Blueimp文件上载程序-Chrome文件夹上载限制

Javascript Blueimp文件上载程序-Chrome文件夹上载限制,javascript,jquery,google-chrome,file-upload,blueimp,Javascript,Jquery,Google Chrome,File Upload,Blueimp,只有chrome 22及更高版本支持在浏览器上载(html5)上拖放文件夹时上载相对文件夹名称 当我尝试使用chrome拖放文件夹支持上传多个文件时,我遇到了某种限制。我找不到任何方法来改变或禁用这个限制 当您只需选择1000个文件并将其放到uploader时,它就会工作,并在等待一段时间后将这些文件添加到上载列表中。没关系 当您选择一个包含1000个文件的文件夹并放入uploader时,uploader只会在该文件夹中随机添加100个文件 当您创建110个文件夹时,每个文件夹中包含1个文件,

只有chrome 22及更高版本支持在浏览器上载(html5)上拖放文件夹时上载相对文件夹名称

当我尝试使用chrome拖放文件夹支持上传多个文件时,我遇到了某种限制。我找不到任何方法来改变或禁用这个限制

  • 当您只需选择1000个文件并将其放到uploader时,它就会工作,并在等待一段时间后将这些文件添加到上载列表中。没关系

  • 当您选择一个包含1000个文件的文件夹并放入uploader时,uploader只会在该文件夹中随机添加100个文件

  • 当您创建110个文件夹时,每个文件夹中包含1个文件,然后uploader只添加100个文件,而不添加10个文件夹

看起来,chrome文件/文件夹上传机制在递归抓取文件和文件夹时,以某种方式限制了任何文件夹中的最大项目数。限制数量为100

我找不到任何相关文档,我迫切需要将该限制提高到每个文件/文件夹至少1000个,或者没有限制


已经谢谢大家了。

在搜索相关文档两天后,我可以在以下url中找到答案

我可以修复蓝精灵上传器

在jquery.fileupload.js中

查找:

替换:

        } else if (entry.isDirectory) {
            dirReader = entry.createReader();

            var entries = [];

            var readEntries = function () {
                dirReader.readEntries(function (results /* entries */) {

                    if (results.length) {
                        entries = entries.concat(Array.prototype.slice.call(results || [], 0));
                        readEntries();
                    } else {
                        that._handleFileTreeEntries(
                            entries,
                            path + entry.name + '/'
                        ).done(function (files) {
                            dfd.resolve(files);
                        }).fail(errorHandler);
                    }

                }, errorHandler);
            };

            readEntries();

        } else {

我希望这会有所帮助。

顺便说一句,这个错误似乎在jquery uploader的最新版本中得到了修复。如果你使用的是最新版本,那就不要发这篇文章。嘿@wmwm你能告诉我们你是如何在后端处理文件夹上传的吗?嗨@karthik-k,我们没有使用原始的上传处理程序。我们正在使用我们自己的软件。但您可以在主上传程序javascript的bind('fileuploadadd',function(e,data){部分使用data.files[0].relativePath。它也可以在上传时发布此值。如果没有,您可以从上传程序javascript轻松添加。
        } else if (entry.isDirectory) {
            dirReader = entry.createReader();

            var entries = [];

            var readEntries = function () {
                dirReader.readEntries(function (results /* entries */) {

                    if (results.length) {
                        entries = entries.concat(Array.prototype.slice.call(results || [], 0));
                        readEntries();
                    } else {
                        that._handleFileTreeEntries(
                            entries,
                            path + entry.name + '/'
                        ).done(function (files) {
                            dfd.resolve(files);
                        }).fail(errorHandler);
                    }

                }, errorHandler);
            };

            readEntries();

        } else {