Skip to main content

Statuscode 412 Precondition Failed

Was bedeutet der Statuscode 412 (Precondition Failed)?

Der Hypertext-Übertragungsprotokoll (HTTP) Fehlercode 412 Precondition Failed zeigt an, dass der Zugriff auf die Zielressource verweigert wurde. Dies geschieht mit bedingten Anforderungen für andere Methoden als GET oder HEAD, wenn die durch die Header-Einträge If-Unmodified-Since oder If-None-Match definierte Bedingung nicht erfüllt ist. In diesem Fall kann die Anfrage, normalerweise ein Upload oder eine Änderung einer Ressource, nicht durchgeführt werden. Dies veranlasst Webserver, einem anfragenden Client mit dem HTTP Fehlerstatus 412 Precondition Failed zu antworten.

Konditionale Requests und Vorbedingungen

Der If-Unmodified-Since Request-Header macht den Request zu einer solchen bedingten Anfrage: der Server sendet die angeforderte Ressource zurück oder akzeptiert sie im Fall eines POST oder einer anderen unsicheren Methode nur dann, wenn sie nicht nach der angegebenen letzten Änderung geändert wurde, dies ist die Vorbedingung für die erwartete Antwort. Andernfalls lautet die Antwort 412 Precondition Failed (Vorbedingung fehlgeschlagen). Es gibt zum Beispiel die zwei folgenden, häufigen Anwendungsfälle für 412 Precondition Failed: in Verbindung mit unsicheren Methoden wie POST kann der Status verwendet werden, um eine optimistische Gleichzeitigkeitskontrolle zu implementieren, wie es bei einigen Wikis der Fall ist. Änderungen werden zurückgewiesen, falls das gespeicherte Dokument seit dem Abrufen des Originals geändert wurde. In Verbindung mit einem If-Range-Header kann damit sichergestellt werden, dass das angeforderte neue Fragment aus einem nicht zwischenzeitlich geänderten Dokument stammt.

Auch der If-None-Match-Header macht eine Anforderung konditional. Bei GET- und HEAD-Methoden sendet der Server die angeforderte Ressource mit dem Status 200 OK nur zurück, solange kein ETag vorhanden ist, der den angegebenen Werten entspricht. Analog wird bei anderen Methoden wird der Request nur dann verarbeitet, wenn der ETag der eventuell vorhandenen Ressource keinem der übermittelten, aufgelisteten Werte entspricht. Wenn die Bedingung für die Methoden GET und HEAD fehlschlägt, muss der Server den HTTP-Statuscode 304 (Not Modified) zurückgeben. Für Methoden, die serverseitige Änderungen anwenden, wird hingegen der Statuscode 412 Precondition Failed verwendet.

Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG

Statuscode 412 Precondition Failed
3 (60%) 4 votes