Expect

Der HTTP Expect Anforderungsheader gibt an, dass es Erwartungen gibt, die vom Server erfüllt werden müssen, um die vollständige Anforderung erfolgreich zu bearbeiten.

Wenn eine Anforderung einen Expect: 100-continue Header hat, sendet ein Server eine 100 Continue Antwort, um anzuzeigen, dass der Server bereit oder in der Lage ist, den Rest des Anforderungsinhalts zu empfangen. Das Warten auf eine 100 Antwort kann hilfreich sein, wenn ein Kunde erwartet, dass ein Fehler wahrscheinlich ist, zum Beispiel beim Senden von zustandsändernden Operationen ohne zuvor überprüfte Authentifizierungsinformationen.

Eine 417 Expectation Failed Antwort wird zurückgegeben, wenn der Server die Erwartung nicht erfüllen kann, oder ein anderer Status ansonsten (z.B. ein 4XX Status für einen Client-Fehler oder ein 2XX Status, wenn die Anforderung erfolgreich ohne weitere Bearbeitung gelöst werden kann).

Keiner der geläufigeren Browser sendet den Expect Header, aber einige Clients (Kommandozeilen-Tools) tun dies standardmäßig.

Headertyp Anforderungsheader
Verbotener Anforderungsheader Ja

Syntax

http
Expect: 100-continue

Direktiven

Es gibt nur eine definierte Erwartung:

100-continue

Informiert die Empfänger darüber, dass der Client dabei ist, einen (vermutlich großen) Nachrichtentext in dieser Anforderung zu senden und wünscht eine 100 Continue Zwischenantwort zu erhalten.

Beispiele

Großer Nachrichtentext

Ein Client sendet eine Anfrage mit Expect Header und wartet, bis der Server antwortet, bevor der Nachrichtentext gesendet wird.

http
PUT /somewhere/fun HTTP/1.1
Host: origin.example.com
Content-Type: video/h264
Content-Length: 1234567890987
Expect: 100-continue

Der Server überprüft die Header und generiert die Antwort, bei der ein 100 Continue dem Client anweist, den Nachrichtentext zu senden:

http
HTTP/1.1 100 Continue

Der Client vervollständigt die Anfrage, indem er die tatsächlichen Daten sendet:

http
[Video data as content for PUT request]

Spezifikationen

Specification
HTTP Semantics
# field.expect

Siehe auch