Kunt u het verschil uitleggen tussen de HTTP-methoden PUT en PATCH in de context van REST API?
sobes.tech AI
Antwoord van AI
De HTTP-methoden PUT en PATCH worden gebruikt om bronnen in een REST API bij te werken, maar verschillen in semantiek en gedrag:
-
PUT — is een idempotente methode die de hele bron op de server vervangt door een nieuwe representatie die in de aanvraagbody wordt verzonden. Als de bron niet bestaat, kan deze worden gemaakt. Herhaalde verzoeken met dezelfde gegevens zullen hetzelfde resultaat opleveren.
-
PATCH — wordt gebruikt voor gedeeltelijke updates van een bron. Alleen de velden die moeten worden gewijzigd, worden in de aanvraagbody verzonden, de rest blijft ongewijzigd. PATCH hoeft niet per se idempotent te zijn, maar dat kan het wel zijn.
Voorbeeld:
PUT /users/123
{
"name": "Иван",
"email": "ivan@example.com"
}
Vervangt de volledige bron van gebruiker 123 door een nieuw object met naam en e-mail.
PATCH /users/123
{
"email": "newemail@example.com"
}
Update alleen het e-mailveld, de naam blijft ongewijzigd.