Sobes.tech
Back to questions
Junior — Middle
65

Какое основное назначение метода PATCH в REST API для обновления ресурсов?

Companies where asked
СБЕР ТехСБЕР Тех

Answer from AI

sobes.tech AI

Метод PATCH в REST API используется для частичного обновления ресурса. В отличие от PUT, который обычно заменяет весь ресурс целиком, PATCH позволяет отправить только те поля, которые нужно изменить, оставляя остальные без изменений. Это экономит трафик и упрощает обновление, когда нужно изменить лишь часть данных.

Пример использования PATCH в C# с ASP.NET Core:

[HttpPatch("users/{id}")]
public IActionResult PatchUser(int id, [FromBody] JsonPatchDocument<User> patchDoc)
{
    var user = _userRepository.GetById(id);
    if (user == null) return NotFound();

    patchDoc.ApplyTo(user, ModelState);
    if (!ModelState.IsValid) return BadRequest(ModelState);

    _userRepository.Update(user);
    return NoContent();
}

Здесь JsonPatchDocument содержит инструкции для изменения конкретных полей объекта User.