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

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

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

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

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

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

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

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

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

Добавлено через 22 часа 56 минут
Что, никто не сталкивался с подобными задачими?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.04.2015, 12:12
Ответы с готовыми решениями:

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

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

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

2
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
09.04.2015, 12:17
Цитата Сообщение от pakskiy Посмотреть сообщение
нужно получить большой файл по вебсокету (формат Base64), преобразовать на стороне клиента в файл (Blob) и отдать пользователю.
во-первых, по сокету вы получаете не файл, а строку символов
во-вторых, что значит "преобразовать и отдать"? браузеры вообще-то вполне самостоятельно это делают, без посторонней помощи -- полученную строку помещаете в src тега <img> и пользователь лицезреет изображение
0
0 / 0 / 0
Регистрация: 08.04.2015
Сообщений: 5
09.04.2015, 13:27  [ТС]
На счет подставления в src знаю, просто проблема именно при большом файле - строка слишком длинная и если даже как-то получится ее запихнуть в переменную на страницу, то при подставлении в src браузер крэшиться, так как не может обработать такой объем файла. Причем, файлы не только изображение, он и бинарные. При этом все конечно же нагружает оперативную память.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.04.2015, 13:27
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Настройка записи справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru