Loading / Đang tải…
Поймите запросы диапазона байтов, поиск и почему прерванные загрузки могут возобновиться, а могут и не возобновиться.
Опубликовано
Запросы HTTP Range позволяют клиенту запрашивать часть ресурса вместо того, чтобы загружать его с самого начала. Браузеры и медиаплееры могут использовать диапазоны для поиска, а клиенты загрузки могут использовать их для возобновления данных. Поддержка зависит от сервера и способа доставки ресурса.
Клиент может запросить интервал байтов у сервера, а поддерживающий сервер может ответить статусом частичного содержимого и запрошенными байтами. Этот механизм работает на уровне ресурсов HTTP; он сам по себе не понимает видеосцены или временные метки. Медиаплееры сопоставляют запрошенное время с нужными им байтами, используя информацию о контейнере и индексацию.
Когда вы переходите вперед в видео, браузер может запрашивать данные рядом с новой позицией, а не ждать каждого предыдущего байта. Эффективность поиска также зависит от метаданных контейнера и поведения сервера. Если сервер игнорирует запросы диапазона, игроку может потребоваться загружать больше данных последовательно или поиск может выполняться менее плавно.
Для возобновления обычно требуется, чтобы клиент знал, сколько байтов уже сохранено, а сервер принял запрос на оставшуюся часть. Измененный файл, подписанный URL-адрес с истекшим сроком действия, отсутствующий файл cookie сеанса или сервер без поддержки диапазона могут помешать продолжению. Сегментированная потоковая передача имеет другую структуру: клиенту может потребоваться получить недостающие сегменты, а не продолжить один файл.
Поведение диапазона видно через заголовки запросов и ответов, но одно наблюдение не позволяет установить, что каждая загрузка может быть возобновлена. Ответ может зависеть от аутентификации, кэша, прокси-сервера и конфигурации сервера. Если разрешенная загрузка прекращается, используйте исходный рабочий процесс браузера и его элементы управления повторными попытками; не пытайтесь обойти проверки авторизации или DRM.
Скачивайте только тот контент, которым вы владеете или имеете разрешение на сохранение. Поддержка зависит от веб-сайта и формата мультимедиа; Содержимое, защищенное DRM, не поддерживается.