PUT
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die PUT
HTTP-Methode erstellt eine neue Ressource oder ersetzt eine Repräsentation der Zielressource mit dem Anforderungs-Inhalt.
Der Unterschied zwischen PUT
und POST
ist, dass PUT
idempotent ist: es macht keinen Unterschied, ob man die Methode einmal oder mehrmals hintereinander aufruft (es gibt keine Nebeneffekte).
Anfrage hat Inhalt | Ja |
---|---|
Erfolgreiche Antwort hat Inhalt | Kann |
Sicher | Nein |
Idempotent | Ja |
Zwischenspeicherbar | Nein |
Erlaubt in HTML-Formularen | Nein |
Syntax
PUT <request-target>["?"<query>] HTTP/1.1
<request-target>
-
Identifiziert die Zielressource der Anfrage in Kombination mit den Informationen, die im
Host
-Header bereitgestellt werden. Dies ist ein absoluter Pfad (z.B./path/to/file.html
) bei Anfragen an einen Ursprungs-Server und eine absolute URL bei Anfragen an Proxies (z.B.http://www.example.com/path/to/file.html
). <query>
Optional-
Eine optionale Abfragekomponente, die durch ein Fragezeichen
?
eingeleitet wird. Wird oft verwendet, um identifizierende Informationen in Form vonkey=value
Paaren zu transportieren.
Beispiele
Eine Ressource erfolgreich erstellen
Die folgende PUT
-Anfrage verlangt das Erstellen einer Ressource unter example.com/new.html
mit dem Inhalt <p>New File</p>
:
PUT /new.html HTTP/1.1
Host: example.com
Content-type: text/html
Content-length: 16
<p>New File</p>
Falls die Zielressource keine aktuelle Repräsentation hat und die PUT
-Anfrage erfolgreich eine erstellt, muss der Ursprungs-Server eine 201 Created
Antwort senden:
HTTP/1.1 201 Created
Content-Location: /new.html
Falls die Zielressource eine aktuelle Repräsentation hat und diese erfolgreich mit dem Zustand der Anfrage modifiziert wird, muss der Ursprungs-Server entweder eine 200 OK
oder eine 204 No Content
senden, um den erfolgreichen Abschluss der Anfrage anzuzeigen:
HTTP/1.1 204 No Content
Content-Location: /existing.html
Spezifikationen
Specification |
---|
HTTP Semantics # PUT |
Browser-Kompatibilität
Der Browser verwendet die PUT
-Methode nicht für durch den Benutzer initiierte Aktionen, daher gilt "Browser-Kompatibilität" nicht.
Entwickler können diese Anforderungsmethode mit fetch()
festlegen.
Siehe auch
- HTTP-Anfragemethoden
- HTTP-Antwortstatuscodes
- HTTP-Header
201 Created
,204 No Content
Antwortstatuscodes