Как возобновить прерванную загрузку в HTML5 - PullRequest
22 голосов
/ 09 октября 2011

Я пытаюсь добавить функцию возобновления в загрузчик файлов html5.

Мне нужно иметь возможность возобновить работу после закрытия (и повторного открытия) браузера, когда я потерял объект файла, я не хочу, чтобы пользовательперетащите / откройте файл снова.

До сих пор я использовал для этого Java-апплет, но я надеялся найти решение html5 для этой проблемы.

Я думал о сохранении файлов в локальном хранилищено они слишком большие.

Есть ли способ сохранить только путь к файлу объекта или любую другую информацию, которая может помочь мне открыть файл, не прося пользователя открыть файл?

Ответы [ 3 ]

5 голосов
/ 08 февраля 2013

Вы можете попробовать Resumable.js - библиотека JavaScript, обеспечивающая несколько одновременных, стабильных и возобновляемых загрузок через файловый API HTML5 (или его домен www.resumablejs.com ) .

возобновляемый. js библиотека JavaScript, обеспечивающая несколько одновременных, стабильных и возобновляемых загрузок с помощью API-файла HTML5.

Библиотека предназначена для обеспечения отказоустойчивости при загрузке больших файлов через HTTP. Это делается путем разбиения каждого файла на маленькие куски; всякий раз, когда загрузка чанка завершается неудачно, загрузка повторяется до завершения процедуры. Это позволяет загрузкам автоматически возобновлять загрузку после потери сетевого подключения либо локально, либо на сервер. Кроме того, он позволяет пользователям приостанавливать и возобновлять загрузку без потери состояния.

Resumable.js использует файловый API HTML5 и возможность разбивать файлы на более мелкие части. В настоящее время это означает, что поддержка ограничена Firefox 4+ и Chrome 11+.

1 голос
/ 10 октября 2011

извините, это невозможно.Ссылка между файлом и браузером, к которой вы можете получить доступ с помощью javascript (FileURL), уничтожается после закрытия окна (и, конечно, при закрытии браузера).Вы можете сохранить имя файла и загруженные суммы / части и попросить пользователя загрузить этот файл снова, продолжая с того места, где он остановился, но не автоматически, без согласия пользователя.

/ Правка: Почемуотрицательные голоса?Пожалуйста, оставьте комментарий, чтобы я знал, что я сказал неправильно!Вопрос в том, как возобновить загрузку, когда пользователь закрывает браузер.И это невозможно.Можно остановить / возобновить загрузку, когда браузер остается открытым и соединение теряется, но не тогда, когда пользователь закрывает браузер (ссылки теряются).Однако вы можете скопировать файл во временную файловую систему , а затем возобновить загрузку оттуда, но для этого требуется согласие пользователя, и оно ограничено количеством места, которое пользователь предоставляет вам для использования.

0 голосов
/ 09 мая 2012

Это возможно с более новыми браузерами (Chrome, Firefox).

Загрузчик YouTube - хороший пример. http://support.google.com/youtube/bin/static.py?hl=en&topic=1719827&guide=1719823&page=guide.cs&answer=1672758

http://www.youtube.com/watch?v=L5ebSn9HgJ4

Я не совсем уверен, как их реализация полностью работает, но это возможно.

...