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


Weitere Inhalte