Sobes.tech
Junior

Erzählen Sie uns vom PUT-Methoden in der REST-API.

sobes.tech KI

Antwort von AI

Die PUT-Methode wird verwendet, um eine Ressource unter der angegebenen URI zu erstellen oder zu aktualisieren.

Wichtige Merkmale:

  • Idempotenz: Die wiederholte Ausführung derselben PUT-Anfrage mit demselben Körper führt zum gleichen Zustand der Ressource auf dem Server (obwohl die Antwort vom Server variieren kann).
  • Vollständige Ersetzung: Die PUT-Anfrage sendet eine vollständige Repräsentation der Ressource, die die bestehende ersetzt.
  • Erstellung oder Aktualisierung: Wenn die Ressource unter der angegebenen URI nicht existiert, erstellt PUT sie. Wenn sie existiert, aktualisiert sie sie. Das Fehlen der Ressource bei einer erfolgreichen PUT-Anfrage führt in der Regel zur Erstellung, die normalerweise den Status 201 Created zurückgibt. Die Aktualisierung einer bestehenden Ressource gibt in der Regel 200 OK oder 204 No Content zurück (wenn kein Körper in der Antwort enthalten ist).

Typische Anwendungsfälle:

  • Vollständige Aktualisierung des Benutzerprofils.
  • Erstellung einer Ressource, wenn der Client ihre URI festlegt.

Beispiel für eine PUT-Anfrage:

PUT /users/123 HTTP/1.1
Host: api.example.com
Content-Type: application/json

{
  "id": 123,
  "name": "Neuer Name",
  "email": "new.email@example.com"
}

Der Server erhält diese Anfrage und erstellt entweder einen Benutzer mit id=123 oder ersetzt vollständig die Informationen des Benutzers mit dieser ID durch die Daten im Anfragekörper.

PUT unterscheidet sich von POST in folgendem:

  • PUT wird verwendet, um eine Ressource unter einer bekannten URI zu aktualisieren oder zu erstellen, die vom Client festgelegt wird. POST wird verwendet, um eine Ressource zu erstellen, wobei der Server die URI der neuen Ressource festlegt, oder für andere Aktionen, die nicht in andere HTTP-Methoden passen.
  • PUT ist idempotent, POST nicht. Wiederholte POST-Anfragen mit demselben Körper können mehrere gleiche Ressourcen erstellen oder unterschiedliche Nebenwirkungen verursachen.

Vergleichstabelle PUT vs. POST:

Merkmal PUT POST
Zweck Erstellen oder Aktualisieren einer Ressource Erstellen einer Ressource, Daten senden
Idempotenz Ja Nein
URI-Definition Vom Client festgelegt Vom Server festgelegt
Auswirkung auf die Ressource Ersetzt oder erstellt vollständig Fügt normalerweise hinzu oder führt eine Aktion aus