Junior
Meséljen a PUT módszerről a REST API-ban.
sobes.tech MI
Válasz az MI-től
A PUT módszert arra használják, hogy egy erőforrást hozzon létre vagy frissítsen a megadott URI-n.
Fő jellemzők:
- Idempotencia: Ugyanaz a PUT kérés ismételt végrehajtása ugyanazzal a testtel ugyanarra az erőforrásra a szerveren ugyanazt az állapotot eredményezi (bár a szerver válasza változhat).
- Teljes helyettesítés: A PUT kérés egy teljes erőforrás-reprezentációt küld, amely helyettesíti a meglévőt.
- Létrehozás vagy frissítés: Ha az erőforrás nem létezik a megadott URI-n, a PUT létrehozza. Ha létezik, frissíti. Sikeres PUT kérés esetén az erőforrás hiánya általában 201 Created státuszt eredményez. A meglévő erőforrás frissítése általában 200 OK vagy 204 No Content (ha nincs törzs).
Tipikus felhasználási forgatókönyvek:
- A felhasználói profil teljes frissítése.
- Erőforrás létrehozása, ha a kliens meghatározza az URI-t.
PUT kérés példája:
PUT /users/123 HTTP/1.1
Host: api.example.com
Content-Type: application/json
{
"id": 123,
"name": "Új Név",
"email": "new.email@example.com"
}
A szerver megkapja ezt a kérést, és vagy létrehoz egy felhasználót az id=123 értékkel, vagy teljesen felülírja az adott ID-vel rendelkező felhasználó adatait a kérés törzsadataival.
A PUT különbözik a POST-tól a következők szerint:
- A PUT-et arra használják, hogy egy ismert URI-n frissítsenek vagy hozzanak létre erőforrást, amit a kliens határoz meg. A POST-ot arra, hogy erőforrást hozzanak létre, ahol a szerver határozza meg az új erőforrás URI-jét, vagy más műveletekre, amelyek nem illenek bele más HTTP-módszerekbe.
- A PUT idempotens, a POST nem. Ismételt POST-kérések ugyanazzal a testtel több azonos erőforrást hozhatnak létre vagy különböző mellékhatásokat okozhatnak.
PUT és POST összehasonlító táblázat:
| Jellemző | PUT | POST |
|---|---|---|
| Cél | Erőforrás létrehozása vagy frissítése | Erőforrás létrehozása, adatok küldése |
| Idempotencia | Igen | Nem |
| URI meghatározása | A kliens által meghatározva | A szerver által meghatározva |
| Hatás az erőforrásra | Teljesen felülír vagy létrehoz | Általában hozzáad vagy műveletet hajt végre |