Fiktion/Satire, mit geprüftem Protokollstempel: HTTP 412 Precondition Failed ist echt. RFC 9110 beschreibt ihn als Antwort, wenn eine oder mehrere Bedingungen aus den Request-Headern beim Test auf dem Server falsch ausfallen. MDN erklärt den Alltagsfall mit Conditional Requests: etwa If-Match, If-Unmodified-Since und ETags, damit beim Speichern keine Änderung aus Versehen über eine frischere Änderung fährt. Der Rest ist Blechpresse: ein Stempelautomat, ein alter Zettel und eine Ressource mit sehr gutem Gedächtnis.
Um 7:03 Uhr kam der Formularwagen in die Redaktion und trug ein Schild: „Ich darf speichern, wenn der Zustand noch derselbe ist.“ Das ist eine schöne Haltung. Auch ein Brötchen darf man nur belegen, wenn es noch auf dem Teller liegt und nicht bereits vom Praktikanten in die Geschichte eingegangen ist.
Der Server nahm den Zettel, hielt ihn gegen das Licht und sagte: „Vorbedingung nicht erfüllt.“
„Aber ich habe alles richtig ausgefüllt“, sagte der Formularwagen.
„Das bestreite ich nicht“, sagte der Server. „Ich bestreite nur die Wirklichkeit, auf die du dich beziehst.“
Wenn die Frischemarke abgelaufen ist
412 ist die Meldung für diesen kalten, aber nützlichen Moment. Die Anfrage kann formal sauber sein, die Methode kann passen, der Inhalt kann sogar schöner sein als vorher. Trotzdem sagt der Server nein, weil der mitgeschickte Prüfzettel nicht mehr zum aktuellen Stand passt. Das ist keine Laune. Das ist Kollisionsschutz mit Amtsstimme.
In der Werkstatt heißt der Prüfzettel gern ETag. Der Client merkt sich eine Marke vom letzten bekannten Zustand und schickt sie später mit If-Match zurück: Bitte nur anwenden, wenn die Marke noch stimmt. Stimmt sie nicht, war jemand schneller, fleißiger oder unverschämt produktiv. Dann wirft der Server keinen Konfettispeicher, sondern 412 Precondition Failed.
Das ist verwandt mit 409 Conflict, aber strenger gekleidet. 409 sagt: Hier knirscht der Zustand. 412 sagt: Du hast selbst eine Bedingung gestellt, mein Freund, und jetzt fällt sie durch die Prüftür. Die Maschine erfüllt also nicht deinen Wunsch, sondern deine Vorsicht. Das ist im Büro selten, im Protokoll aber vorgesehen.
Der Stempel bleibt oben
Der Stempelautomat zeigte dem Formularwagen zwei Marken. Auf dem Zettel stand „alte-marke“. Auf der Ressource stand „neue-marke“. Dazwischen lag kein moralisches Urteil, nur ein Unterschied. Unterschiede sind in Computern gefährlich, weil sie sich gern als Kleinigkeiten verkleiden und später als Datenverlust aus dem Kopierer steigen.
„Kannst du nicht trotzdem speichern?“, fragte der Wagen.
„Kann ich“, sagte der Server. „Aber dann müsste ich so tun, als hätte niemand inzwischen gearbeitet. Dafür bin ich nicht bezahlt. Ich bin ein Dienst, kein Geschichtsfälscher.“
Also rollte der Wagen zurück, holte den aktuellen Stand, verglich, murrte, führte zusammen und kam wieder. Diesmal passte die Marke. Der Stempel fiel. Im Protokoll blieb eine kleine Notiz: Vorbedingungen sind keine Schikane. Sie sind Sicherheitsgurte für Daten, die sonst im Flur gegeneinanderlaufen.
