Вопрос проверяет знание HTTP-методов и их семантики при работе с REST API.
POST — создать ресурс (сервер выбирает ID).
PUT — полностью заменить ресурс (клиент указывает ID).
PATCH — частично обновить ресурс.
Используется, когда клиент не контролирует URL ресурса.
Сервер возвращает 201 Created и Location-заголовок.
Пример:
POST /users
Body: {"name": "Alice"}Клиент указывает точный URL (/users/123).
Если ресурса нет — создаёт, если есть — перезаписывает.
Пример:
PUT /users/123
Body: {"name": "Bob", "age": 30}Только изменяет указанные поля.
Пример:
PATCH /users/123
Body: {"age": 31}Когда использовать:
POST — для новых объектов (корзина покупок).
PUT — когда клиент управляет данными (профиль пользователя).
PATCH — для оптимизации (изменение одного поля).