2014-10-22 4 views
0

Я хотел бы прочитать данные из службы, расшифровать ее в браузере, а затем записать ее. Чтение из службы и дешифрование достаточно просто, но как я могу спросить пользователя, где скачать файл?Как передать файл на жесткий диск?

Я нашел API FileSystem и FileWriter, но это не широко поддерживается (только Chrome, Opera и Safari). Я искал Downloadify по рекомендации this question, но, похоже, у меня должен быть весь файл в памяти, прежде чем я смогу начать загрузку. Помимо этого, он отлично работает. Однако я хочу настроить его как поток. Получите кусок от службы, расшифруйте этот кусок, напишите этот фрагмент на диск, прежде чем получить еще один кусок.

Как я могу передавать данные с javascript на диск? Я уверен, что это возможно, потому что Mega.co.nz работает таким образом. Я пробовал использовать их код, но безрезультатно.

ответ

0

В конце концов я столкнулся с FileSaver.js, замечательной маленькой библиотекой, чтобы сделать именно то, что я хочу делать. Он предоставляет простую функцию saveAs(blob, filename) для сохранения содержимого с javascript на жесткий диск с использованием диалогового окна сохранения, как если бы пользователь загружал что-то с сервера, за исключением того, что сервер не требуется. Он работает для достаточно больших файлов, которые перечислены в таблице на их сайте. Похоже, что большинство браузеров работают с файлами объемом не менее 345 МБ. There's a blog post автор с большим разрывом его использования.

Смежные вопросы