Назад к вопросам
VK
Junior — Middle
76
Можете объяснить различия между методами HTTP PUT и PATCH в контексте REST API?
Компании, где спрашивали
Lime
Ответ от нейросети
sobes.tech AI
Методы HTTP PUT и PATCH используются для обновления ресурсов в REST API, но отличаются по своей семантике и поведению:
-
PUT — это идемпотентный метод, который заменяет весь ресурс на сервере новым представлением, переданным в теле запроса. Если ресурс не существует, он может быть создан. При повторных запросах с одинаковыми данными результат будет одинаковым.
-
PATCH — используется для частичного обновления ресурса. В теле запроса передаются только те поля, которые нужно изменить, остальные остаются без изменений. PATCH не обязательно идемпотентен, хотя может быть.
Пример:
PUT /users/123
{
"name": "Иван",
"email": "ivan@example.com"
}
Заменит весь ресурс пользователя 123 новым объектом с именем и email.
PATCH /users/123
{
"email": "newemail@example.com"
}
Обновит только поле email, имя останется прежним.