Sobes.tech
Junior — Middle

Mi a PATCH módszer fő célja a REST API-ban az erőforrások frissítéséhez?

sobes.tech MI

Válasz az MI-től

A REST API-ban a PATCH módszert a forrás részleges frissítésére használják. A PUT-tól eltérően, amely általában az egész erőforrást helyettesíti, a PATCH csak azokat a mezőket küldi el, amelyeket módosítani kell, a többit változatlanul hagyva. Ez megtakarítja a forgalmat és egyszerűsíti a frissítést, amikor csak egy részadatot kell módosítani.

Példa a PATCH használatára C#-ban az ASP.NET Core-ban:

[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();
}

Itt a JsonPatchDocument utasításokat tartalmaz arra vonatkozóan, hogy az adott User objektum mely mezőit kell módosítani.