@Neckvik

Как обмениваться тяжёлыми фалами между сервером (node) и клиентом?

Есть любой файл (начиная от картинки, заканчивая видео или архивом тяжёлым), как нам его передать?
Передать гипотетически в одном запросе HTTP мы же можем, но, как я понимаю, в случае потери соединения или сбоя нам сначала придётся все делать. Так же мы не сможем показываться статус загрузки файла.
Суть заключается в том, чтобы можно было например продолжить скачивать файл при восстановления связи, а не заново его скачивать и загружать (как например скачивание в браузере). Вопрос: через что это делать и что почитать? И как это вообще работает?

Сервер на Node, клиенты разные.
  • Вопрос задан
  • 109 просмотров
Пригласить эксперта
Ответы на вопрос 2
Scorpi
@Scorpi
Если по HTTP, то можно использовать заголовок Range, и запрашивать только необходимые части.
https://developer.mozilla.org/en-US/docs/Web/HTTP/...
Так же если и делать свой протокол, то клиент просто присылает запрос какие именно данные ему нужны.
Если соединение потерялось, смотрим сколько данных мы уже получили, и делаем запрос к серверу на оставшиеся данные.
Ответ написан
Комментировать
@de1m
Может каким-то уже готовым модулем пользоваться?
Есть к примеру node-downloader-helper. Можно конечно при желании что-то похожее самому написать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы