Sobes.tech
Middle

Prečo sú potrebné obe metódy (PUT a PATCH), ak je možné použiť PATCH na úplnú aktualizáciu?

sobes.tech AI

Odpoveď od AI

Metódy PUT a PATCH slúžia na rôzne účely, hoci PATCH možno použiť aj na úplnú aktualizáciu.

  • PUT je idempotentná metóda, ktorá nahradí celý zdroj. Ak odošlete požiadavku PUT, musíte poskytnúť úplnú reprezentáciu zdroja a server nahradí starý zdroj novým.

  • PATCH je určený na čiastočnú aktualizáciu zdroja. Posielate iba tie polia, ktoré chcete zmeniť, bez nutnosti odoslať celý objekt.

Použitie oboch metód umožňuje jasne odlíšiť operácie: PUT — úplná aktualizácia, PATCH — čiastočná. To zlepšuje čitateľnosť API a optimalizuje prenos dát, pretože PATCH môže prenášať menej dát.

Príklad:

PUT /users/123
{
  "name": "Иван",
  "email": "ivan@example.com"
}

PATCH /users/123
{
  "email": "new_email@example.com"
}

V prvom prípade sa aktualizuje celý používateľ, v druhom — len email.