Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: HTTP methods, PATCH, PUT, REST API, partial update

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

Вопрос проверяет понимание разницы между HTTP-методами PATCH и PUT для частичного и полного обновления ресурсов.

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

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

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

Основное различие между PATCH и PUT

В REST-архитектуре PUT и PATCH используются для обновления ресурсов, но работают по-разному. PUT заменяет весь ресурс целиком: клиент отправляет полное представление объекта, и сервер сохраняет его как есть. PATCH же применяет частичные изменения — клиент передаёт только те поля, которые нужно обновить, или инструкцию по модификации.

Идемпотентность

PUT является идемпотентным: многократный вызов одного и того же PUT-запроса приводит к одному состоянию ресурса. PATCH может быть неидемпотентным, если изменения накапливаются (например, увеличить счётчик на 1).

Примеры кода

Рассмотрим ресурс пользователя:

// Исходный ресурс
{
  "name": "Alice",
  "email": "alice@example.com",
  "age": 30
}

// PUT — полная замена
PUT /users/1
{
  "name": "Alice",
  "email": "alice@new.com",
  "age": 31
}
// Результат: все поля заменены

// PATCH — частичное обновление
PATCH /users/1
{
  "email": "alice@new.com"
}
// Результат: изменён только email, остальные поля сохранены

Когда что использовать

  • Используйте PUT, когда клиент отправляет полное состояние ресурса и хочет его заменить.
  • Используйте PATCH для частичных обновлений, чтобы уменьшить объём передаваемых данных и избежать перезаписи неизменённых полей.

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    4

  • Сложность:

    3

Навыки

  • JavaScript

    JavaScript

  • Node.js

    Node.js

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

#HTTP methods

#PATCH

#PUT

#REST API

#partial update

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию