Получить файл через websocket и начать диалог загрузки

мое веб-приложение HTML5 получает файл в виде двоичных данных через websocket. Есть ли способ инициировать диалог загрузки файлов (через javascript), чтобы сохранить полученные данные на диске пользователя?

Спасибо!

2 ответа

Вам нужно построить dataUri и открыть с ним новое окно. Конкретные типы mimetypes могут инициировать автоматическое сохранение браузера в диалоговом окне.

Пример данных uri: "data:application/octet-stream,base64" + base64binary


Пока нет, нет. Новый File API в настоящее время охватывает только чтение. Обновить: см. Ответ Питера, если вам нужно сделать это только на (и на сегодняшний день, не IE) браузеры, где вы можете сделать это с помощью схемы URI data:.

Обычный способ сделать это - получить файл через HTTP в скрытый iframe, используя Content-Disposition: attachment, чтобы запустить диалог загрузки файлов, а не получать его через веб-сокет.

licensed under cc by-sa 3.0 with attribution.