Range
The Range
HTTP request header indicates the part of a document that the server should return. Several parts can be requested with one Range
header at once, and the server may send back these ranges in a multipart document. If the server sends back ranges, it uses the 206
Partial Content
for the response. If the ranges are invalid, the server returns the 416
Range Not Satisfiable
error. The server can also ignore the Range
header and return the whole document with a 200
status code.
Syntax
Range: <unit> <range-start>-
Range: <unit> <range-start>-<range-end>
Range: <unit> <range-start>-<range-end>, <range-start>-<range-end>
Range: <unit> <range-start>-<range-end>, <range-start>-<range-end>, <range-start>-<range-end>
Directives
- <unit>
- The unit in which ranges are specified. This is usually
bytes
.
- <range-start>
- An integer in the given unit indicating the beginning of the request range.
- <range-end>
- An integer in the given unit indicating the end of the requested range. This value if optional and, if omitted, the end of the document is taken as the end of the range.
Examples
Range: bytes 200-1000, 2000-6576, 19000-
Specifications
Browser compatibility
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Servo |
Range |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
Feature | Android | Chrome for Android | Edge Mobile | Firefox for Android | IE Mobile | Opera Mobile | Safari Mobile |
Range |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
See also