HTTP 304-Statuscode


304 Not Modified

Wenn der Client eine bedingte GET-Anfrage sendet und die Anfrage zulässig ist, sich der Inhalt des Dokuments jedoch nicht geändert hat (seit dem letzten Zugriff oder gemäß den Bedingungen der Anfrage), Der Server sollte diesen Statuscode zurückgeben. Eine 304-Antwort darf keinen Nachrichtentext enthalten und endet daher immer mit der ersten Leerzeile nach dem Nachrichtenkopf.

Die Antwort muss die folgenden Header-Informationen enthalten:

Datum, es sei denn, der Server verfügt nicht über eine Uhr. Wenn Server ohne Uhren diese Regeln befolgen, können Proxyserver und Clients das Datumsfeld selbst zu den empfangenen Antwortheadern hinzufügen (wie in RFC 2068 angegeben), und der Caching-Mechanismus funktioniert normal.

ETag und/oder Content-Location, wenn dieselbe Anfrage eine 200-Antwort hätte zurückgeben sollen.

Läuft ab, Cache-Kontrolle und/oder variiert, wenn sich sein Wert möglicherweise von dem Wert unterscheidet, der anderen vorherigen Antworten auf dieselbe Variable entspricht.

Wenn diese Antwortanforderung eine starke Cache-Überprüfung verwendet, sollte diese Antwort keine anderen Entitätsheader enthalten. Andernfalls darf diese Antwort keine anderen Entitätsheader enthalten (z. B. verwendet eine bedingte GET-Anfrage eine schwache Cache-Überprüfung). Dadurch werden Inkonsistenzen zwischen zwischengespeicherten Entitätsinhalten und aktualisierten Entitätsheaderinformationen vermieden.

Wenn eine 304-Antwort darauf hinweist, dass eine Entität derzeit nicht zwischengespeichert ist, muss das Caching-System die Antwort ignorieren und die Anfrage ohne Einschränkung wiederholen.

Wenn eine 304-Antwort empfangen wird, die eine Aktualisierung eines Cache-Eintrags erfordert, muss das Cache-System den gesamten Eintrag aktualisieren, um die Werte aller Felder widerzuspiegeln, die in der Antwort aktualisiert wurden.