Sobes.tech
Junior — Middle

Aký je hlavný účel metódy PATCH v REST API na aktualizáciu zdrojov?

sobes.tech AI

Odpoveď od AI

Metóda PATCH v REST API sa používa na čiastočnú aktualizáciu zdroja. Na rozdiel od PUT, ktorý zvyčajne nahradí celý zdroj, PATCH umožňuje odoslať iba tie polia, ktoré je potrebné zmeniť, pričom ostatné zostávajú nezmenené. To šetrí prenos dát a zjednodušuje aktualizáciu, keď je potrebné zmeniť iba časť údajov.

Príklad použitia PATCH v C# s 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();
}

Tu JsonPatchDocument obsahuje inštrukcie na zmenu konkrétnych polí objektu User.