Какая разница между методами PUT и PATCH?

Разница между PUT и PATCH в том, как они обновляют ресурс на сервере:


PUT

  • Используется для полного обновления ресурса.

  • Клиент отправляет всю сущность целиком, даже если изменилось только одно поле.

  • Если чего-то нет в запросе → на сервере это поле может обнулиться или сброситься.

Пример: Есть пользователь:

{
  "id": 1,
  "name": "Alex",
  "email": "alex@test.com"
}

Запрос:

PUT /users/1
{
  "id": 1,
  "name": "Bob"
}

Результат: поле email может стереться, так как оно не было передано.


PATCH

  • Используется для частичного обновления ресурса.

  • Клиент отправляет только изменённые поля.

  • Остальные данные остаются без изменений.

Пример:

PATCH /users/1
{
  "name": "Bob"
}

Результат: изменится только name, а email сохранится.

Last updated

Was this helpful?