Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад

Чем отличается семантика PUT от PATCH?

Вопрос проверяет понимание различий между полным и частичным обновлением ресурса.

Короткий ответ

PUT заменяет весь ресурс целиком и является идемпотентным: повторный вызов даст одинаковый результат. PATCH обновляет только конкретные поля ресурса, без перезаписи остальных, и не обязан быть идемпотентным. PUT подходит для полного пересоздания сущности, PATCH — для частичного и более эффективного обновления.

Длинный ответ

Различие между PUT и PATCH

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

1. Что такое PUT

Определение: PUT — метод, который полностью заменяет существующий ресурс новым состоянием.

Характеристики:

  • полный апдейт

  • идемпотентен

  • клиент отправляет все поля сущности

Пример:

json

PUT /users/10
{
  "name": "John",
  "email": "john@example.com",
  "age": 30
}

Даже если изменилось только одно поле — требуется отправить весь объект.

Если какое-то поле отсутствует, сервер может интерпретировать это как удаление.


2. Что такое PATCH

Определение: PATCH — метод частичного обновления ресурса, изменяющий только указанные поля.

Характеристики:

  • частичный апдейт

  • не обязательно идемпотентен

  • передаются только изменённые поля

Пример:

json

PATCH /users/10
{
  "email": "new@example.com"
}

Остальные данные пользователя не затрагиваются.


3. Когда использовать PUT

  • сервис ожидает полную замену ресурса

  • удобно синхронизировать данные из внешней системы

  • работа с статичными структурами

  • важно, чтобы повторный запрос не менял результат


4. Когда использовать PATCH

  • частичное обновление

  • экономия трафика

  • сложные ресурсы с большим количеством полей

  • частые изменения отдельных полей

  • API, где важно не трогать не указанные данные

PATCH чаще встречается в реальных API из-за своей гибкости.


5. Вывод

PUT — это полная замена ресурса, а PATCH — частичное обновление. Различие важно соблюдать, чтобы API оставался логичным, предсказуемым и соответствовал REST-принципам.

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    5

  • Сложность:

    4

Навыки

  • Networks

Ключевые слова

#put

#method

#patch

Подпишись на PHP Developer в телеграм

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.