RSS Der tägliche WTF
Folgen
CodeSOD: Ich bin nicht 200
HTTP-Statuscodes haben theoretische Kategorien zur Vereinfachung der Verwendung: 100er für Informationen, 200er für Erfolge, 300er für Weiterleitungen, 400er für Client-Fehler und 500er für Server-Fehler. Allerdings weichen viele reale Implementierungen von diesen Standards ab. Zum Beispiel verwendet LinkedIn einen nicht standardmäßigen 999-Code für nicht autorisierten Zugriff. Shopify hat eigene benutzerdefinierte Codes eingeführt, und Apache hat sogar einen 218-Code. WebDAV verkompliziert die Angelegenheit weiter, indem es neue Statuscodes und HTTP-Anfrage-Verben hinzufügt.Ein Stück generierter Code versucht, HTTP-Statuscodes zu behandeln, indem er überprüft, ob der Statuscode durch 100 geteilt nicht gleich 2 ist. Dieser Ansatz behandelt jeden Statuscode außerhalb des 200-Bereichs als Fehler. Der Autor kritisiert diese Methode, insbesondere die Division durch 100, da sie falsch nicht fehlerhafte Antworten wie 300er als Fehler kennzeichnet. Zum Beispiel würde ein 304-Code (Nicht geändert), der anzeigt, dass zwischengespeicherte Inhalte noch gültig sind, fälschlicherweise als Fehler identifiziert. Diese clevere, aber fehlerhafte Logik führte zu unnötigen fehlgeschlagenen Anforderungen, was eine Vorliebe für mathematische Trickserei über robuste Fehlerbehandlung zeigt.