HTTP-Methoden bieten eine Möglichkeit, die gewünschte Aktion anzugeben, die für die angegebene Ressource ausgeführt werden soll. Das Ergebnis hängt von der Implementierung des Servers ab und es können bereits vorhandene Daten oder dynamisch generierte Daten sein.

Die am häufigsten verwendeten HTTP-Methoden sind GET, POST, PUT, PATCH und DELETE, die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) entsprechen.

Requestsmethoden:

  1. GET: Die GET-Methode wird verwendet, um Informationen abzurufen, die durch die Anforderungs-URL identifiziert werden. Es ist die primäre Art der Informationsbeschaffung. Es ändert den Status der angeforderten Ressource nicht und gilt als sichere Methode. Wenn sich die Requests-URL auf einen datenproduzierenden Prozess bezieht, werden anstelle des Quelltexts die produzierten Daten als Antwort zurückgegeben, es sei denn, der Text ist die Ausgabe eines Prozesses.
     
  2. POST: Die POST-Methode wird verwendet, um Daten als Anforderungstext an den Server zu senden. Diese Methode gibt an, dass die Daten im Text der Requests akzeptiert und höchstwahrscheinlich auf dem Server gespeichert werden sollen. Der Content-Type-Header gibt den Typ des Anforderungstexts an. Es wird meistens beim Hochladen einer Datei oder beim Absenden eines vollständigen Webformulars verwendet. Antworten auf die Methode können nicht zwischengespeichert werden, bis die Antwort entsprechende Cache-Control- oder Expires-Header-Felder enthält.
     
  3. PUT: Die PUT-Methode wird verwendet, um den bereits vorhandenen Status der Ressource zu ersetzen oder die Ressource zu erstellen, wenn die Ressource nicht existiert (vom Ursprungsserver festgelegt), mit der Anforderungsnutzlast.
     
  4. PATCH: Die PATCH-Methode wird verwendet, um eine Ressource teilweise zu aktualisieren. Es kann als Anweisungssatz betrachtet werden, der die Änderung von bereits auf dem Server vorhandenen Daten beschreibt, um eine neue Version der Daten zu erstellen, und wird nicht als vollständige Ressource betrachtet.
     
  5. DELETE: Die DELETE-Methode wird verwendet, um eine angegebene Ressource auf dem Ursprungsserver zu löschen. Dem Client kann nicht zugesichert werden, dass die Operation durchgeführt wurde, obwohl der Statuscode, der vom Server zurückgegeben wird, dies anzeigt.
     
  6. HEAD: Der HEAD ist identisch mit der GET-Requests, aber der Server darf nicht den Response-Body senden, sondern sollte die gleichen Header senden, die er gesendet hätte, wenn URI mit der GET-Methode angefordert worden wäre. Es kann verwendet werden, um Metadaten zu erhalten, ohne den Antworttext vom Server zu übertragen, und wird häufig zum Testen von Hypertext-Links auf Gültigkeit, Zugänglichkeit und kürzliche Änderungen verwendet.
     
  7. CONNECT: Die CONNECT-Methode wird verwendet, um einen End-to-End-HTTP-Tunnel über einen Proxy-Server aufzubauen.
     
  8. OPTIONS: Die OPTIONS-Methode fordert zulässige Kommunikationsoptionen für eine bestimmte Ressource an. Diese Anforderung kann gesendet werden, um die unterstützten HTTP-Methoden und andere unterstützte Optionen zu ermitteln, ohne die Ressource anzufordern.
     
  9. TRACE: Die TRACE-Methode fordert den Server auf, im Response-Body exakt die von ihm empfangene Requests zu senden. Es ist für diagnostische Zwecke nützlich.

Eine einfache GET-Requests in Javascript:

Javascript

// GET request
fetch("https://jsonplaceholder.typicode.com/users/2")
  
    // Convert reponse to json
      .then((response) => response.json())
      
    // Print data to console
      .then((data) => console.log(data));

Antwort

Wichtige Terminologien:

  • Sicher: Eine HTTP-Methode ist sicher, wenn sie den Status des Servers nicht ändert. Mit anderen Worten, ein Verfahren ist sicher, wenn es nur zum Lesen oder Abrufen der Daten verwendet werden kann. Mehrere HTTP-Methoden sind sicher, zum Beispiel GET und HEAD. Alle sicheren Methoden sind idempotent, aber das Gegenteil gilt nicht. Beispielsweise sind PUT und DELETE beide Methoden idempotent, aber unsicher.
     
  • Idempotent: Eine HTTP-Methode ist idempotent, wenn die Operation das gleiche Ergebnis liefert, wenn sie einmal oder mehrmals ausgeführt wird, während der Server im gleichen Zustand bleibt. Mit anderen Worten, eine idempotente Methode sollte keine unbeabsichtigten Auswirkungen haben, unabhängig davon, wie oft sie ausgeführt wird. Die Methoden GET, HEAD, PUT und DELETE sind bei korrekter Implementierung idempotent. Alle sicheren Methoden sind auch idempotent.
     
  • Zwischenspeicherbar: Eine zwischenspeicherbare Antwort ist eine HTTP-Antwort, die zwischengespeichert werden kann und für den Zugriff zur späteren Verwendung gespeichert wird, wobei die neue Anforderung auf dem Server gespeichert wird. Dadurch werden unnötige Requestsn an den Server vermieden.

Requestsmethode

Requests hat Nutzlast

Antwort hat Nutzlast

Sicher

Idempotent

Cachefähig

WERDEN

Optional

 ja

ja

ja 

ja

POST



ja

ja

Nein

Nein

ja

SETZEN

ja

ja

Nein

ja

Nein

PATCH

ja

ja

Nein

Nein

Nein

LÖSCHEN

Optional

ja



Nein

ja

Nein

KOPF

Optional

Nein

ja

ja

ja

ANSCHLIESSEN

Optional

ja

Nein

Nein

Nein

OPTIONEN

Optional

ja

ja

ja

Nein

VERFOLGEN

Nein

ja

ja

ja

Nein