Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 08.04.2015
Сообщений: 5
1

Large Blob на стороне клиента

09.04.2015, 12:12. Показов 1168. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, прошу подсказать, кто знает.

Есть WebSocket, по нему в JS получаю файл в base64. Подскажите, как его можно правильно преобразовать в большой файл (blob) на стороне клиента. С небольшими файлами проблем не возникает, но при больших файлах (> 20 МБ) браузер крешится при конверте Base64 в Blob.

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

Как вариант для хранения сконвертированного файла рассматривал сохранение в IndexedDb.

Если коротко, то нужно получить большой файл по вебсокету (формат Base64), преобразовать на стороне клиента в файл (Blob) и отдать пользователю.

Буду рад любым советам или ссылкам.
Спасибо!

Добавлено через 22 часа 56 минут
Что, никто не сталкивался с подобными задачими?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2015, 12:12
Ответы с готовыми решениями:

Парсинг на стороне клиента
Возможно ли спарсить значение на странице на стороне клиента (к примеру через JS)?? просто фишка в...

Читать из файла на стороне клиента
как можно это вообще организовать? Необходимо получить содержимое файла которое указывает клиент...

Очистить кэш на стороне клиента
Скажите, есть ли способ чистить кэш FF на стороне клиента или после загрузки страницы имитировать...

HTTP-запрос на стороне клиента
На данный момент есть сайт, посылающий HTTP-запрос через php, т.е. Запрос посылается со стороны...

2
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,625
09.04.2015, 12:17 2
Цитата Сообщение от pakskiy Посмотреть сообщение
нужно получить большой файл по вебсокету (формат Base64), преобразовать на стороне клиента в файл (Blob) и отдать пользователю.
во-первых, по сокету вы получаете не файл, а строку символов
во-вторых, что значит "преобразовать и отдать"? браузеры вообще-то вполне самостоятельно это делают, без посторонней помощи -- полученную строку помещаете в src тега <img> и пользователь лицезреет изображение
0
0 / 0 / 0
Регистрация: 08.04.2015
Сообщений: 5
09.04.2015, 13:27  [ТС] 3
На счет подставления в src знаю, просто проблема именно при большом файле - строка слишком длинная и если даже как-то получится ее запихнуть в переменную на страницу, то при подставлении в src браузер крэшиться, так как не может обработать такой объем файла. Причем, файлы не только изображение, он и бинарные. При этом все конечно же нагружает оперативную память.
0
09.04.2015, 13:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2015, 13:27
Помогаю со студенческими работами здесь

Формирование картинки на стороне клиента
Мне нужно формировать некий текст на странице и отправлять клиенту, чтобы клиент при помощи...

БД, которая работает на стороне клиента
Мне надо, чтобы пользователь зашел на сайт, посетил несколько страниц. После отключения сети...

Сохранение текста в файле на стороне клиента
Здравствуйте! У меня такая задача: на странице есть некое текстовое поле и кнопка &quot;сохранить&quot;....

Управление установками Language на стороне клиента
Имеется несколько WEB-страниц - на русском языке, на иврите, на английском. Заказчик от меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru