В чем разница между PUT и PATCH

«В чем разница между PUT и PATCH» — вопрос из категории Сети, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

PUT полностью заменяет ресурс новыми данными. Если какие-то поля не указаны, они будут установлены в нулевые значения или удалены.

PATCH применяет частичные изменения к ресурсу, обновляя только указанные поля, оставляя остальные без изменений.

Пример PUT:

// Обновит весь пользователя, даже если передано только имя
PUT /users/1
{
    "name": "New Name"
}

Пример PATCH:

// Обновит только имя, остальные поля останутся прежними
PATCH /users/1
{
    "name": "New Name"
}

PUT идемпотентен (повторные вызовы дают тот же результат), PATCH не всегда идемпотентен.

Видео-ответы