Sobes.tech
Middle

Po co potrzebne są obie metody (PUT i PATCH), skoro PATCH można używać do pełnej aktualizacji?

sobes.tech AI

Odpowiedź od AI

Metody PUT i PATCH służą różnym celom, choć PATCH można używać do pełnej aktualizacji.

  • PUT to metoda idempotentna, która zastępuje cały zasób. Jeśli wysyłasz żądanie PUT, musisz podać pełną reprezentację zasobu, a serwer zastąpi stary zasób nowym.

  • PATCH służy do częściowej aktualizacji zasobu. Wysyłasz tylko te pola, które chcesz zmienić, bez konieczności przesyłania całego obiektu.

Użycie obu metod pozwala wyraźnie rozgraniczyć operacje: PUT — pełna aktualizacja, PATCH — częściowa. To poprawia czytelność API i optymalizuje ruch, ponieważ PATCH może przesyłać mniej danych.

Przykład:

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

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

W pierwszym przypadku aktualizowany jest cały użytkownik, w drugim — tylko email.