Critical-CH header
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Der HTTP-Critical-CH-Antwortheader wird zusammen mit Accept-CH verwendet, um die akzeptierten Client-Hints zu identifizieren, die als kritisch angesehen werden.
Benutzeragenten, die eine Antwort mit Critical-CH erhalten, müssen überprüfen, ob die angegebenen kritischen Header im ursprünglichen Request gesendet wurden. Wenn nicht, wird der Benutzeragent den Request zusammen mit den kritischen Headern erneut senden, anstatt die Seite zu rendern. Dieser Ansatz stellt sicher, dass die mittels kritischer Client-Hints festgelegten Client-Präferenzen immer berücksichtigt werden, auch wenn sie nicht im ersten Request enthalten sind oder nach Serverkonfigurationsänderungen.
Jeder im Critical-CH-Header aufgeführte Header sollte auch in den Accept-CH- und Vary-Headern vorhanden sein.
| Headertyp | Antwortheader |
|---|
Syntax
Critical-CH: <ch-list>
Direktiven
<ch-list>-
Eine Liste von einem oder mehreren durch Kommas getrennten Client-Hint-Headern, die der Server als kritische Client-Hints betrachtet.
Beispiele
Der Client sendet eine erste Anfrage an den Server:
GET / HTTP/1.1
Host: example.com
Der Server antwortet und gibt über Accept-CH an, dass er Sec-CH-Prefers-Reduced-Motion akzeptiert. In diesem Beispiel wird Critical-CH auch verwendet, um anzugeben, dass Sec-CH-Prefers-Reduced-Motion als kritischer Client-Hint betrachtet wird.
HTTP/1.1 200 OK
Content-Type: text/html
Accept-CH: Sec-CH-Prefers-Reduced-Motion
Vary: Sec-CH-Prefers-Reduced-Motion
Critical-CH: Sec-CH-Prefers-Reduced-Motion
Hinweis:
Wir haben Sec-CH-Prefers-Reduced-Motion im Vary-Header angegeben, um anzuzeigen, dass Antworten basierend auf dem Wert dieses Headers separat zwischengespeichert werden sollen (auch wenn die URL gleich bleibt).
Jeder Header, der im Critical-CH-Header aufgeführt ist, sollte auch in den Accept-CH- und Vary-Headern vorhanden sein.
Der Client wiederholt automatisch den Request (aufgrund der oben angegebenen Critical-CH) und teilt dem Server über Sec-CH-Prefers-Reduced-Motion mit, dass eine Benutzerpräferenz für reduzierte Bewegungsanimationen besteht:
GET / HTTP/1.1
Host: example.com
Sec-CH-Prefers-Reduced-Motion: "reduce"
Der Client wird den Header in nachfolgenden Anfragen in der aktuellen Sitzung einschließen, es sei denn, die Accept-CH-Antworten ändern sich, um anzuzeigen, dass er vom Server nicht mehr unterstützt wird.