Suche…


Parameter

Statuscode Grund-Phrase - Beschreibung
100 Fortfahren - Der Client sollte den folgenden Teil einer mehrteiligen Anforderung senden.
101 Protokollwechsel - Der Server ändert die Version oder den Protokolltyp, der in dieser Kommunikation verwendet wird.
200 OK - Der Server hat die Anfrage des Clients erhalten und abgeschlossen.
201 Erstellt - Der Server hat die Anfrage akzeptiert und eine neue Ressource erstellt, die unter dem URI im Header Location verfügbar ist.
202 Accepted ( Akzeptiert) - Der Server hat die Anfrage des Clients erhalten und akzeptiert, aber die Verarbeitung wurde noch nicht gestartet oder abgeschlossen.
203 Nicht autorisierende Informationen - Der Server gibt Daten zurück, die möglicherweise eine Unter- oder Obermenge der auf dem ursprünglichen Server verfügbaren Informationen sind. Wird hauptsächlich von Proxies verwendet.
204 Kein Inhalt - wird anstelle von 200 (OK) verwendet, wenn die Antwort keinen Text enthält.
205 Inhalt zurücksetzen - identisch mit 204 (kein Inhalt), der Client sollte jedoch die aktive Dokumentansicht neu laden.
206 Partial Content - wird anstelle von 200 (OK) verwendet, wenn der Client einen Range Header anfordert.
300 Multiple Choices ( Mehrfachauswahl) - Die angeforderte Ressource ist für mehrere URIs verfügbar. Der Client sollte die Anforderung an einen in der Liste angegebenen URI im Nachrichtentext umleiten.
301 Dauerhaft verschoben - Die angeforderte Ressource ist für diesen URI nicht mehr verfügbar, und der Client sollte diese und alle zukünftigen Anforderungen an den im Location Header angegebenen URI umleiten.
302 Gefunden - Die Ressource befindet sich vorübergehend unter einem anderen URI. Diese Anforderung sollte bei Bestätigung durch den Benutzer an den URI im Location Header weitergeleitet werden, zukünftige Anforderungen sollten jedoch nicht geändert werden.
303 Siehe Sonstiges - sehr ähnlich zu 302 (gefunden), erfordert jedoch keine Benutzereingaben, um an den bereitgestellten URI umzuleiten. Der bereitgestellte URI sollte mit einer GET-Anforderung abgerufen werden.
304 Nicht geändert - Der Client hat einen If-Modified-Since oder einen ähnlichen Header gesendet, und die Ressource wurde seitdem nicht geändert. Der Client sollte eine zwischengespeicherte Kopie der Ressource anzeigen.
305 Proxy verwenden - Die angeforderte Ressource muss erneut über den im Kopfzeilenfeld Location angegebenen Proxy angefordert werden.
307 Temporäre Umleitung - identisch mit 302 (Found), aber HTTP 1.0-Clients unterstützen keine 307 Antworten.
400 Fehlerhafte Anforderung - Der Client hat eine fehlerhafte Anforderung mit Syntaxfehlern gesendet und sollte die Anforderung ändern, um diese zu korrigieren, bevor sie wiederholt wird.
401 Nicht autorisiert - Die angeforderte Ressource ist ohne Authentifizierung nicht verfügbar. Der Client kann die Anforderung unter Verwendung eines Authorization Headers wiederholen, um Authentifizierungsdetails anzugeben.
402 Zahlung erforderlich - reservierter, nicht spezifizierter Statuscode für Anwendungen, für die Benutzerabonnements erforderlich sind, um Inhalte anzuzeigen.
403 Verboten : Der Server versteht die Anforderung, lehnt sie jedoch aufgrund vorhandener Zugriffskontrollen ab. Die Anfrage sollte nicht wiederholt werden.
404 Nicht gefunden - Auf diesem Server ist keine Ressource verfügbar, die dem angeforderten URI entspricht. Kann anstelle von 403 verwendet werden, um zu vermeiden, dass Details der Zugriffskontrolle offengelegt werden.
405 Methode nicht zulässig - Die Ressource unterstützt die Anforderungsmethode (HTTP-Verb) nicht. Im Header " Allow akzeptable Anforderungsmethoden aufgeführt.
406 Nicht akzeptabel - Die Ressource weist Eigenschaften auf, die gegen die in der Anforderung gesendeten Accept-Header verstoßen.
407 Proxy-Authentifizierung erforderlich - Ähnlich wie 401 (Unauthorized), gibt jedoch an, dass sich der Client zuerst beim Zwischen-Proxy authentifizieren muss.
408 Request Timeout ( Anforderungszeitlimit) : Der Server hat eine andere Anforderung vom Client erwartet, jedoch wurde keine innerhalb eines akzeptablen Zeitraums bereitgestellt.
409 Konflikt - Die Anforderung konnte nicht abgeschlossen werden, da sie mit dem aktuellen Status der Ressource in Konflikt stand.
410 Gegangen - ähnlich wie 404 (nicht gefunden), weist jedoch auf eine dauerhafte Entfernung hin. Es ist keine Weiterleitungsadresse verfügbar.
411 Erforderliche Länge : Der Client hat keinen gültigen Content-Length Header angegeben und muss dies tun, bevor der Server diese Anforderung akzeptiert.
412 Voraussetzung fehlgeschlagen - Die Ressource ist nicht mit allen Bedingungen verfügbar, die in den vom Client gesendeten bedingten Headern angegeben sind.
413 Request Entity Too Large - Der Server kann einen Nachrichtentext in der vom Client gesendeten Länge derzeit nicht verarbeiten.
414 Request-URI zu lang - Der Server lehnt die Anfrage ab, da der Request-URI länger ist, als der Server interpretieren möchte.
415 Nicht unterstützter Medientyp - Der Server unterstützt den vom Client angegebenen MIME-Typ oder Medientyp nicht und kann diese Anforderung nicht bearbeiten.
416 Angeforderter Bereich nicht zufriedenstellend : Der Client hat einen Bytebereich angefordert, der Server kann der Spezifikation jedoch keinen Inhalt bereitstellen.
417 Erwartung fehlgeschlagen - Der Client hat Einschränkungen im Expect Header angegeben, die der Server nicht erfüllen kann.
500 Internal Server Error ( Interner Serverfehler) : Der Server hat eine unerwartete Bedingung oder einen Fehler erfüllt, der die Ausführung dieser Anforderung verhindert.
501 Nicht implementiert - Der Server unterstützt nicht die zum Abschließen der Anforderung erforderliche Funktionalität. Wird normalerweise verwendet, um eine Anforderungsmethode anzugeben, die für keine Ressource unterstützt wird.
502 Bad Gateway - Der Server ist ein Proxy und hat beim Verarbeiten dieser Anforderung eine ungültige Antwort vom Upstream-Server erhalten.
503 Dienst nicht verfügbar - Der Server ist stark ausgelastet oder wird gewartet und kann diese Anforderung derzeit nicht bedienen.
504 Gateway-Timeout - Der Server ist ein Proxy und hat nicht rechtzeitig eine Antwort vom Upstream-Server erhalten.
505 HTTP-Version nicht unterstützt - Der Server unterstützt nicht die Version des HTTP-Protokolls, mit der der Client eine Anforderung gestellt hat.

Grundlegendes Antwortformat

Wenn ein HTTP-Server eine wohlgeformte HTTP-Anforderung erhält, muss er die in der Anforderung enthaltenen Informationen verarbeiten und eine Antwort an den Client zurückgeben. Eine einfache HTTP 1.1-Antwort kann wie eine der folgenden aussehen, normalerweise gefolgt von einer Reihe von Headerfeldern und möglicherweise einem Antworttext:

HTTP/1.1 200 OK \r\n
HTTP/1.1 404 Not Found \r\n
HTTP/1.1 503 Service Unavailable \r\n

Eine einfache HTTP 1.1-Antwort hat folgendes Format:

HTTP-Version Status-Code Reason-Phrase CRLF

Wie in einer Anfrage gibt die HTTP-Version die Version des verwendeten HTTP-Protokolls an. Für HTTP 1.1 muss dies immer die Zeichenfolge HTTP/1.1 .

Status-Code ist ein dreistelliger Code, der den Status der Anfrage des Kunden angibt. Die erste Ziffer dieses Codes ist die Statusklasse , die den Statuscode in eine von fünf Antwortkategorien [1] einordnet :

  • 1xx Informational - Der Server hat die Anfrage erhalten und die Verarbeitung wird fortgesetzt
  • 2xx Erfolg - Der Server hat die Anfrage akzeptiert und verarbeitet
  • 3xx Umleitung - Der Client muss weitere Schritte 3xx , um die Anforderung abzuschließen
  • 4xx Client-Fehler - Der Client hat eine Anfrage gesendet, die fehlerhaft war oder nicht erfüllt werden konnte
  • 5xx Server-Fehler - Die Anforderung war gültig, kann jedoch derzeit vom Server nicht erfüllt werden

Reason-Phrase ist eine kurze Beschreibung des Statuscodes. Beispielsweise hat der Code 200 eine Grundphrase von OK ; Code 404 hat eine Phrase von Not Found . Eine vollständige Liste der Begründungsausdrücke finden Sie in den folgenden Parametern oder in der HTTP-Spezifikation .

Die Zeile endet mit einem Wagenrücklauf-Zeilenvorschubpaar, normalerweise dargestellt durch \r\n .

Zusätzliche Header

Wie eine HTTP-Anfrage kann eine HTTP-Antwort zusätzliche Header enthalten, um die von ihr bereitgestellte Antwort zu ändern oder zu erweitern.

Eine vollständige Liste der verfügbaren Header ist in §6.2 der Spezifikation definiert . Die am häufigsten verwendeten Header sind:

  • Server , der wie ein User-Agent Anforderungsheader für den Server fungiert;
  • Location , der in den Statusantworten 201 und 3xx verwendet wird, um einen URI anzugeben, an den weitergeleitet werden soll; und
  • ETag , eine eindeutige Kennung für diese Version der zurückgegebenen Ressource, damit Clients die Antwort im Cache speichern können.

Antwortheader stehen hinter der Statuszeile und werden wie bei Anforderungsheatern als solche gebildet:

Name: Value CRLF

Name gibt den Headernamen an, z. B. ETag oder Location , und Value gibt den Wert an, den der Server für diesen Header festlegt. Die Zeile endet mit einer CRLF.

Eine Antwort mit Kopfzeilen könnte folgendermaßen aussehen:

HTTP/1.1 201 Created \r\n
Server: WEBrick/1.3.1 \r\n
Location: http://example.com/files/129742 \r\n

Nachrichtenkörper

Wie bei Anforderungskörpern können HTTP-Antworten einen Nachrichtentext enthalten. Dadurch werden zusätzliche Daten bereitgestellt, die der Client verarbeitet. 200 OK-Antworten auf eine wohlgeformte GET-Anforderung sollten immer einen Nachrichtentext enthalten, der die angeforderten Daten enthält. (Wenn dies nicht der Fall ist, ist 204 No Content eine angemessenere Antwort).

Ein Nachrichtentext ist nach allen Kopfzeilen und einer doppelten CRLF enthalten. Bei Anfragen sollte die Länge in Byte mit dem Content-Length Header angegeben werden. Eine erfolgreiche Antwort auf eine GET-Anfrage könnte daher wie folgt aussehen:

HTTP/1.1 200 OK\r\n
Server: WEBrick/1.3.1\r\n
Content-Length: 39\r\n
ETag: 4f7e2ed02b836f60716a7a3227e2b5bda7ee12c53be282a5459d7851c2b4fdfd\r\n
\r\n
Nobody expects the Spanish Inquisition.


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow