it-swarm.com.de

Was bedeutet "Verbindung: Schließen", wenn es in der Antwortnachricht verwendet wird?

Wenn der Client den Header Connection: close In der Anforderungsnachricht verwendet, bedeutet dies, dass der Server die Verbindung nach dem Senden der Antwortnachricht schließen soll.

Ich dachte, dass dieser Header nur in den Anforderungsnachrichten verwendet wird, aber ich habe festgestellt, dass er auch in den Antwortnachrichten verwendet wird. Zum Beispiel:

(enter image description here

Was bedeutet dieser Header, wenn er in der Antwortnachricht verwendet wird?

Ich denke, dass dies bedeutet, dass der Server die Verbindung nach dem Senden der Antwort der Nachricht schließt (selbst wenn der Client den Header Connection: keep-alive In seiner Anforderungsnachricht verwendet hat). Hab ich recht?

34
user365656

Ja das ist korrekt. Der Server kann einfach sagen "Ich unterstütze Ihre Keep-Alive-Anfrage nicht und werde die Verbindung nur schließen, wenn ich fertig bin".

Aus RFC 2616, Abschnitt 14.10 :

HTTP/1.1 definiert die Verbindungsoption "Schließen" für den Absender
signalisieren, dass die Verbindung nach Abschluss des
Antwort. Zum Beispiel,

   Connection: close

in den Feldern "Anfrage" oder "Antwortheader" wird angegeben, dass die Verbindung NICHT als "dauerhaft" betrachtet werden darf (Abschnitt 8.1).
nachdem die aktuelle Anfrage/Antwort abgeschlossen ist.

HTTP/1.1-Anwendungen, die keine dauerhaften Verbindungen unterstützen, MÜSSEN in jeder Nachricht die Verbindungsoption "Schließen" enthalten.

33
Sven