Back to questions
Senior
4
Какие HTTP-методы использовались при проектировании REST API? В чём разница между PATCH и POST?
Companies where asked
Сбербанк
Answer from AI
sobes.tech AI
При проектировании REST API обычно используются следующие HTTP-методы:
- GET — получение ресурса или списка ресурсов.
- POST — создание нового ресурса.
- PUT — полное обновление ресурса.
- PATCH — частичное обновление ресурса.
- DELETE — удаление ресурса.
Разница между PATCH и POST:
-
POST используется для создания новых ресурсов или выполнения операций, которые не являются идемпотентными. Например, отправка формы для создания записи.
-
PATCH применяется для частичного обновления существующего ресурса. В запросе передаются только те поля, которые нужно изменить, без замены всего объекта.
Пример PATCH-запроса для обновления email пользователя:
PATCH /users/123 HTTP/1.1
Content-Type: application/json
{
"email": "newemail@example.com"
}
POST же чаще выглядит так:
POST /users HTTP/1.1
Content-Type: application/json
{
"name": "Иван",
"email": "ivan@example.com"
}
Таким образом, PATCH более экономен при обновлении, а POST — для создания или выполнения действий.