Antworten:
Es muss der 418 sein. Ich bin ein Teekannen- Statuscode, Teil des Hyper Text Coffee Pot Control Protocol (eine Erweiterung von HTTP). Bringt mich jedes Mal zum Lachen.
2.3.2 418 Ich bin eine Teekanne
Jeder Versuch, Kaffee mit einer Teekanne zuzubereiten, sollte den Fehlercode "418 Ich bin eine Teekanne" ergeben. Der resultierende Entitätskörper kann kurz und dick sein.
Die Tatsache, dass der Überweiser falsch geschrieben wurde und entschieden wurde, dass die Rechtschreibfehler beibehalten werden sollten.
Offensichtliche Antwort: PUT, DELETE, TRACE, OPTIONS, CONNECT-Methoden
Die meisten Leute kennen die GET- und POST-Methoden, weil sie diese beim Erstellen von Formularen verwenden. Browser verwenden auch häufig HEAD. Die anderen Methoden sind viel weniger bekannt; Sie werden hauptsächlich von spezifischeren Anwendungen verwendet.
Hat jemand jemals gesehen, dass 402 Zahlung erforderlich ist ?
Ich dachte, 204 wäre nur, wenn Sie keinen Inhalt zum Anzeigen haben, sondern die Spezifikation sieht so aus, als ob es ein zusätzliches Verhalten gibt, dass der Benutzeragent "seine Dokumentansicht nicht ändert".
Gemäß HOWTO: Konfigurieren Sie Apache so, dass ein HTTP 204 (kein Inhalt) für AJAX zurückgegeben wird
FWIW, Google macht tatsächlich etwas Ähnliches. Jedes Mal, wenn ein Nutzer in seinen Suchergebnissen auf einen Link klickt, pingt Google sich selbst an, um den Klick aufzuzeichnen. Der Antwortcode vom Ping ist ein HTTP 204.
Außerdem schlägt 204 No Content vor, dass dies eine gute Technik für "Web-Bugs" oder "Beacons" ist, wenn Sie bis zum letzten Byte des Netzwerkverkehrs sparen möchten, den Sie können.
(...) Serverbesitzer möchten, dass Remoteverbindungen zu dieser Ressource entfernt werden. (...)
Web-Spider (insbesondere Google) deindizieren (normalerweise beim nächsten Crawlen) eine Seite, die 410 zurückgibt.
Verwenden Sie in dynamischen Inhalten den Header Last_Modified oder ETag
Manchmal haben Sie dynamische Inhalte, deren Erstellung groß und / oder kostspielig sein kann und die sich möglicherweise nicht von Anforderung zu Anforderung ändern. Sie können Ihrer generierten Antwort einen Last_Modified- oder ETag-Header hinzufügen.
Oben in Ihrem teuren dynamischen Code können Sie mit If_Modified_Since oder If_None_Match feststellen, ob der Inhaltsanforderer noch aktuell ist. Wenn dies der Fall ist, ändern Sie den Antwortstatus in "304 Unmodified" und beenden Sie die Anforderung.
Einige serverseitige Technologien bieten solche Funktionen formal, aber Sie können die oben genannten Funktionen auch in ASP-Classic verwenden.
Beachten Sie, dass dies von der Einstellung von Cache-Control, Expires-Headern dadurch abweicht, dass sichergestellt wird, dass der Client auf Anfrage immer über die neuesten Informationen verfügt.
Sie können beantragen wieder einen (großen) HTTP - Antwort (zB Datei - Download) mit Range
und If-Range
Request - Header mit jeweils dem angegebenen Byte - Bereich und der einzigartigen Dateikennung oder der Dateiänderung Zeitstempel. Dies ist möglich, wenn der Server das Accept-Ranges: bytes
und ETag
oder gesendet hatLast-Modified
Header Antwortheader bei der ersten Antwort mit der Benachrichtigung gesendet hat, dass der Server Bytebereichsanforderungen unterstützt, der eindeutigen Dateikennung und dem Zeitstempel für die Dateimodifikation.
Die erste Antwort kann folgendermaßen aussehen (die ETag
besteht normalerweise aus Dateiname, Größe und Zeitstempel der letzten Änderung):
Accept-Ranges: bytes
ETag: file.ext_1234_1234567890
Content-Range: bytes 0-1233/1234
Wenn der Download beispielsweise bei 1 KB (1024 Byte) abgebrochen wird, kann der Client ihn wie folgt fortsetzen:
If-Range: file.ext_1234_1234567890
Range: bytes=1024-
Welches sollte diese Antwort mit den entsprechenden Bytes im Körper zurückgeben:
Accept-Ranges: bytes
ETag: file.ext_1234_1234567890
Content-Range: bytes 1024-1233/1234
ReST versucht, HTTP als Schnittstellenprotokoll an seine Grenzen zu bringen.
Es ist keine versteckte Funktion , aber wenn man sich gut definierte ReST-APIs ansieht, kann man einen guten Überblick darüber bekommen, wie HTTP funktionieren soll, und wunderbare Beispiele dafür finden, was mit einer einfachen Kombination von HTTP-Methoden, Statuscodes und Headern erreicht werden kann und her.
Trailer (im Gegensatz zu Header)
HTTP 100 (Weiter) Status
Ein Client kann eine Anforderungsnachricht mit einem Anforderungshauptteil senden, um festzustellen, ob der Ursprungsserver bereit ist, die Anforderung anzunehmen.
In einigen Fällen kann es für den Client unangemessen oder höchst ineffizient sein, den Text zu senden, wenn der Server die Nachricht ablehnt, ohne den Text zu betrachten.
Könnte verwendet werden, um Datenverkehr von unerwünschten Clients zu vermeiden .. und / oder wo Bandbreite ein kostbares Gut ist.
Für die vollständige Nutzung dieser Funktion gibt es jedoch einige Kriterien für HTTP1.1-Clients, -Server und -Proxys. Weitere Informationen zu HTTP-Verbindungen finden Sie im HTTP / 1.1-RFC 2616 .
http://www.domain.invalid/index.php?id=44
aufgerufen wird und die query ( id=44
) keine Ressource zurückgeben konnte, warum nicht einen Statuscode zurückgeben 404
?http://www.domain.invalid/index.php?id=foo
aufgerufen wird, während id
nur Ganzzahlen akzeptiert werden, warum nicht einen Statuscode zurückgeben 400
?200
(ok, kein Problem, Sie machen es gut) zurück 401
?Ja, Statuscodes scheinen für einige Webentwickler eine Art geheime Funktionalität von HTTP zu sein ... Aber ich frage mich, ob das okkulteste aller "Merkmale" dieses Protokolls nicht sein RFC ist !
401
ist nur für die HTTP-Authentifizierung und nicht für andere Arten. Afaik veranlasst die meisten Browser, den Benutzer nach einem http-Passwort zu fragen.
HTTP-Authentication
... ^^ Ist es so schwer, sie zu verwenden, anstatt das Rad neu zu erfinden?
.htaccess
Dateien - wahrscheinlich nur eine Webmaster kann aktualisieren. Daher ist die HTTP-Authentifizierung für die Verwaltung der Benutzerrechte und der An- und Abmeldung einer Anwendung nicht besonders geeignet.
HTTP-Authentication
, und sogar PHP kann damit umgehen HTTP-Authentication
( php.net/manual/en/features.http-auth.php ). Wenn Sie ein Webentwickler sind, müssen Sie die Grundlagen der Serververwaltung nur aus Sicherheitsgründen erlernen! Da Webentwickler über Kenntnisse als Webmaster / Systemadministrator verfügen müssen, kann er diese Aufgaben problemlos ausführen.