Content-Range header
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.
The HTTP Content-Range
response header is used in range requests to indicate where the content of a response body belongs in relation to a complete resource.
It should only be included in 206 Partial Content
or 416 Range Not Satisfiable
responses.
Header type | Response header, Content header |
---|---|
Forbidden request header | No |
CORS-safelisted request header | No |
Syntax
Content-Range: /
Content-Range: /*
Content-Range: */
Directives
-
The unit for specifying ranges. Currently, only
bytes
is supported. -
A range with the format
, where-
and
are integers for the start and end position (zero-indexed & inclusive) of the range in the given
, respectively.*
is used in a416 Range Not Satisfiable
response to indicate that the value is not a range. -
The total length of the document (or
*
if unknown).
Examples
Partial content response
This 206 Partial Content
response shows a partial response, with the Content-Range
indicating that it contains the first 1024 bytes of a 146515 byte file.
HTTP/2 206
content-type: image/jpeg
content-length: 1024
content-range: bytes 0-1023/146515
…
(binary content)
Range not satisfiable
If the server cannot satisfy the requested range request, it should respond with a 416 Range Not Satisfiable
status, and the Content-Range
should specify *
for the range along with the total size of the resource.
HTTP/2 416
Content-Range: bytes */67589
Specifications
Specification |
---|
HTTP Semantics # field.content-range |
Browser compatibility
See also
- HTTP range requests guide
If-Range
,Range
headersContent-Type
206 Partial Content
,416 Range Not Satisfiable
status codes