If-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.
Der HTTP-If-Range
-Request-Header macht eine Bereichsanfrage bedingt. Wenn die Bedingung erfüllt ist, wird eine Bereichsanfrage gestellt, und der Server sendet eine 206 Partial Content
-Antwort zurück, die einen Teil (oder Teile) der Ressource im Body enthält. Wenn die Bedingung nicht erfüllt ist, wird die vollständige Ressource mit einem 200 OK
-Status zurückgesendet.
Dieser Header kann entweder mit dem Last-Modified
-Validator oder mit ETag
verwendet werden, jedoch nicht mit beiden.
Der häufigste Anwendungsfall ist das Fortsetzen eines Downloads mit der Garantie, dass die Ressource auf dem Server seit dem letzten vom Client empfangenen Teil nicht verändert wurde.
Header-Typ | Request-Header |
---|---|
Verbotener Request-Header | Nein |
Syntax
If-Range: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT
If-Range: <etag>
Direktiven
<etag>
-
Ein Entitäts-Tag, das die angeforderte Ressource eindeutig darstellt. Es ist eine Zeichenfolge von ASCII-Zeichen, die in Anführungszeichen gesetzt ist (wie
"675af34563dc-tr34"
). Ein schwaches Entitäts-Tag (eines, das mitW/
vorangestellt ist) darf in diesem Header nicht verwendet werden. <day-name>
-
Einer von
Mon
,Tue
,Wed
,Thu
,Fri
,Sat
oderSun
(Groß-/Kleinschreibung beachten). <day>
-
2-stellige Tageszahl, z. B. "04" oder "23".
<month>
-
Einer von
Jan
,Feb
,Mar
,Apr
,May
,Jun
,Jul
,Aug
,Sep
,Oct
,Nov
,Dec
(Groß-/Kleinschreibung beachten). <year>
-
4-stellige Jahreszahl, z. B. "1990" oder "2016".
<hour>
-
2-stellige Stundenzahl, z. B. "09" oder "23".
<minute>
-
2-stellige Minutenzahl, z. B. "04" oder "59".
<second>
-
2-stellige Sekundenzahl, z. B. "04" oder "59".
- GMT
-
Greenwich Mean Time. HTTP-Daten sind immer in GMT ausgedrückt, niemals in lokaler Zeit.
Beispiele
If-Range: Wed, 21 Oct 2015 07:28:00 GMT
If-Range: "67ab43"
Spezifikationen
Specification |
---|
HTTP Semantics # field.if-range |
Browser-Kompatibilität
Siehe auch
- Leitfaden HTTP-Bedingte Anfragen
ETag
Last-Modified
If-Match
,If-Modified-Since
,If-Unmodified-Since
,If-None-Match
bedingte Request-Header206 Partial Content
,412 Precondition Failed
,416 Range Not Satisfiable
Antwortstatuscodes