Accept
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 Accept
Anforderungs- und Antwort-Header gibt an, welche Inhaltstypen, ausgedrückt als MIME-Typen, der Absender verstehen kann.
Bei Anfragen verwendet der Server die Inhaltsaushandlung, um einen der Vorschläge auszuwählen und informiert den Client über die Wahl mit dem Content-Type
Antwort-Header.
Bei Antworten liefert er Informationen darüber, welche Inhaltstypen der Server in Nachrichten zur angeforderten Ressource verstehen kann, sodass der Inhaltstyp in nachfolgenden Anfragen an die Ressource verwendet werden kann.
Browser setzen erforderliche Werte für diesen Header basierend auf dem Kontext der Anfrage. Zum Beispiel verwendet ein Browser unterschiedliche Werte in einer Anfrage beim Abrufen eines CSS-Stylesheets, Bildes, Videos oder Skripts.
Headertyp | Anforderungs-Header, Antwort-Header |
---|---|
Verbotener Header-Name | Nein |
CORS-safelisted Anforderungs-Header | Ja* |
* Werte können keine CORS-unsicheren Anforderungs-Header-Bytes enthalten, einschließlich "():<>?@[\]{},
, Delete 0x7F
, und Steuerzeichen 0x00
bis 0x19
, außer Tab 0x09
.
Syntax
Accept: <media-type>/<MIME_subtype>
Accept: <media-type>/*
Accept: */*
// Multiple types, weighted with the quality value syntax
Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8
Direktiven
<media-type>/<subtype>
-
Ein einzelner, präziser Medientyp, wie
text/html
. <media-type>/*
-
Ein Medientyp ohne Untertyp. Zum Beispiel entspricht
image/*
image/png
,image/svg
,image/gif
, und anderen Bildtypen. */*
-
Jeder Medientyp.
;q=
(q-Faktor Gewichtung)-
Ein Wert in Reihenfolge der Präferenz, ausgedrückt durch einen relativen Qualitätswert, genannt Gewicht.
Beispiele
Verwendung von Standard-Accept-Anforderungs-Headern
HTTP-Anfragen mittels Befehlszeilenwerkzeugen wie curl und wget verwenden */*
als Standardwert für Accept
:
GET / HTTP/1.1
Host: example.com
User-Agent: curl/8.7.1
Accept: */*
Die Navigation im Browser hat typischerweise den folgenden Accept
-Anforderungs-Header-Wert:
GET /en-US/ HTTP/2
Host: developer.mozilla.org
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
…
Nach dem Empfang des Dokuments sehen die Standard-Accept
-Werte in Anfragen für Bilder auf dem developer.mozilla.org
Beispiel so aus:
Accept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5
Konfiguration der Accept-Anforderungs-Header für JSON-Antworten
Systeme, die API-Interaktion beinhalten, fordern häufig application/json
-Antworten an.
Hier ist ein Beispiel einer GET
-Anfrage, bei der der Client spezifisch eine JSON-Antwort anfordert:
GET /users/123 HTTP/1.1
Host: example.com
Authorization: Bearer abcd123
Accept: application/json
Spezifikationen
Specification |
---|
HTTP Semantics # field.accept |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- HTTP Inhaltsaushandlung
- Liste der Standard-Accept-Werte
- CORS-Safelist Anforderungs-Header-Beschränkungen
- Ein Header mit dem Ergebnis der Inhaltsaushandlung:
Content-Type
- Andere ähnliche Header:
TE
,Accept-Encoding
,Accept-Language