Range
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Заголовок запроса Range
указывает серверу какую часть документа ему необходимо вернуть. Несколько частей документа может быть запрошено с помощью заголовка Range
за один раз, и сервер может вернуть все эти части через многокомпонентный документ. При отправке данных отдельными частями, сервер использует код ответа 206
Partial Content
. Если запрашиваемые диапазоны данных не верны, сервер возвращает ошибку 416
Range Not Satisfiable
. Сервер так же может проигнорировать заголовок Range
и вернуть документ целиком с кодом ответа 200
.
Тип заголовка | Request header |
---|---|
Forbidden header name | нет |
Синтаксис
Range: <единица>=<начало-диапазона>- Range: <единица>=<начало-диапазона>-<конец-диапазона> Range: <единица>=<начало-диапазона>-<конец-диапазона>, <начало-диапазона>-<конец-диапазона> Range: <единица>=<начало-диапазона>-<конец-диапазона>, <начало-диапазона>-<конец-диапазона>, <начало-диапазона>-<конец-диапазона> Range: <единица>=-<длина-с-конца>
Директивы
- <единица>
-
Единица, в которой указывается запрашиваемый диапазон. Обычно объявляется, как
bytes
.
- <начало-диапазона>
-
Число, в указанных единицах, являющееся началом запрашиваемого диапазона.
- <конец-диапазона>
-
Число, в указанных единицах, являющееся концом запрашиваемого диапазона. Это значение не является обязательным и, если его не определять, концом диапазона будет считаться конец документа.
- <длина-с-конца>
-
Количество единиц документа, которые необходимо вернуть серверу, начиная с конца документа.
Примеры
Запрашивание трёх диапазонов байтов из одного файла.
Range: bytes=200-1000, 2000-6576, 19000-
Запрашивание первых 500 и последних 500 байтов из файла. Запрос может быть отклонён сервером в связи с перекрывающимися диапазонами.
Range: bytes=0-499, -500
Спецификации
Спецификация | Заголовок |
---|---|
RFC 7233, раздел 3.1: Range | Hypertext Transfer Protocol (HTTP/1.1): Range Requests |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
If-Range
Content-Range
Content-Type
206
Partial Content
416
Range Not Satisfiable