mirror of
https://github.com/rmaake1/httpstatuses.git
synced 2024-11-02 00:32:36 +01:00
42 lines
1.7 KiB
Markdown
42 lines
1.7 KiB
Markdown
---
|
|
set: 4
|
|
code: 416
|
|
title: Requested Range Not Satisfiable
|
|
references:
|
|
"Rails HTTP Status Symbol": ":requested_range_not_satisfiable"
|
|
---
|
|
|
|
The 416 (Range Not Satisfiable) status code indicates that none of the ranges in
|
|
the request's Range header field ([RFC7233 Section 3.1][2]) overlap the current
|
|
extent of the selected resource or that the set of ranges requested has been
|
|
rejected due to invalid ranges or an excessive request of small or overlapping
|
|
ranges.
|
|
|
|
For byte ranges, failing to overlap the current extent means that the
|
|
first-byte-pos of all of the byte-range-spec values were greater than the
|
|
current length of the selected representation. When this status code is
|
|
generated in response to a byte-range request, the sender SHOULD generate a
|
|
Content-Range header field specifying the current length of the selected
|
|
representation ([RFC7233 Section 4.2][3]).
|
|
|
|
For example:
|
|
|
|
```
|
|
HTTP/1.1 416 Range Not Satisfiable
|
|
Date: Fri, 20 Jan 2012 15:41:54 GMT
|
|
Content-Range: bytes */47022
|
|
```
|
|
|
|
Note: Because servers are free to ignore Range, many implementations will simply
|
|
respond with the entire selected representation in a [200 (OK)](/200) response.
|
|
That is partly because most clients are prepared to receive a [200 (OK)](/200)
|
|
to complete the task (albeit less efficiently) and partly because clients might
|
|
not stop making an invalid partial request until they have received a complete
|
|
representation. Thus, clients cannot depend on receiving a
|
|
416 (Range Not Satisfiable) response even when it is most appropriate.
|
|
|
|
Source: [RFC7233 Section 4.4][1]
|
|
|
|
[1]: <http://tools.ietf.org/html/rfc7233#section-4.4>
|
|
[2]: <http://tools.ietf.org/html/rfc7233#section-3.1>
|
|
[3]: <http://tools.ietf.org/html/rfc7233#section-4.2> |