Загрузчик файлов JS с потоковой передачей, т.е. без загрузки всего файла в память - PullRequest
6 голосов
/ 06 декабря 2011

Что-то похожее на то, что описано на этой странице MDN , но без загрузки файла в память, т. Е. Я бы хотел иметь возможность отправлять файл порциями, используя некоторый потоковый интерфейс, чтобы мой клиентский процесс не зависит от размера файла. Файл выбирается с использованием невидимого элемента <input type=file>.

Это проблема реального мира: мои пользователи будут загружать сразу несколько файлов, которые могут быть достаточно большими (и клиентские устройства достаточно ограниченными), чтобы беспокоиться о потреблении памяти. В то же время я хотел бы предоставить хороший клиентский загрузчик с индикатором прогресса.

Интерфейс FileReader не поддерживает потоковую передачу, если, конечно, я что-то упустил.

Решение должно работать в последних версиях Safari, Chrome и Firefox, и, если возможно, также в IE9 (хотя надежды на это мало). Редактировать : также нет jQuery, просто голый JavaScript.

1 Ответ

0 голосов
/ 08 декабря 2011

Единственный, кого я знаю, который обладает всеми этими возможностями (загрузка нескольких файлов, загрузка содержимого потока файлов, индикатор выполнения загрузки и т. Д.), Хотя использует jQuery и называется jQuery File Upload Plugin URL:

http://blueimp.github.com/jQuery-File-Upload/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...