Sobes.tech
Junior — Middle

Qual è la funzione principale del metodo PATCH in REST API per aggiornare le risorse?

sobes.tech AI

Risposta dell'AI

Il metodo PATCH nell'API REST viene utilizzato per aggiornamenti parziali di una risorsa. A differenza di PUT, che di solito sostituisce l'intera risorsa, PATCH consente di inviare solo i campi da modificare, lasciando gli altri invariati. Questo risparmia traffico e semplifica l'aggiornamento quando si deve modificare solo una parte dei dati.

Esempio di utilizzo di PATCH in C# con 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();
}

Qui, JsonPatchDocument contiene istruzioni per modificare campi specifici dell'oggetto User.