находящимися на разных континентах, интернет может быть плохой.
Какие вы знаете протоколы для передачи больших файлов с возможностью восстановления передачи при сетевых ошибках?
Если не городить велосипеды - то можно попробовать порезать на части и через rsync
в http файл передаются в base64-кодировке? слишком большой оверхед получится
Если вы не будете делать изврат в виде "запихивать файл в json" - то файл после заголовков будет передаваться как есть, без перекодирования. Ну, может быть он будет сжат, если клиент и сервер на это будут согласны, но это обычно прозрачно для обоих сторон.
Спасибо. То есть если передавать бинарный файл размером 100 байт, то после всех заголовков, в теле будут идти 100 байт данных, без перекодирования в hex или во что-то текстовое?
Если вы используете нативные механизмы а не костыли (FileResult или StreamResult у mvc), то да - всё будет нетронутым
Можете прочитать подробнее про range запросы. Asp.net в них умеет, но могут быть нюансы. На клиенте - если это ваш код, то, возможно, придётся следить за тем, на какой позиции оборвалось.
Можно протоколы с rolling hash, типа того, что используется в rsync.
Обсуждают сегодня