Sobes.tech
Junior — Middle

Qual é a principal finalidade do método PATCH na API REST para atualizar recursos?

sobes.tech IA

Resposta da IA

O método PATCH na API REST é utilizado para atualizar parcialmente um recurso. Ao contrário do PUT, que normalmente substitui todo o recurso, o PATCH permite enviar apenas os campos que precisam ser alterados, deixando os outros inalterados. Isto economiza tráfego e simplifica a atualização quando apenas uma parte dos dados precisa ser modificada.

Exemplo de uso do PATCH em C# com 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();
}

Aqui, JsonPatchDocument contém instruções para modificar campos específicos do objeto User.