Sobes.tech
Junior — Middle

Kāda ir galvenā PATCH metodes nozīme REST API resursu atjaunināšanā?

sobes.tech AI

Atbilde no AI

REST API metodes PATCH izmanto, lai daļēji atjauninātu resursu. Atšķirībā no PUT, kas parasti aizstāj visu resursu, PATCH ļauj nosūtīt tikai tos laukus, kas jāmaina, atstājot pārējos nemainītus. Tas ietaupa trafiku un vienkāršo atjaunināšanu, kad nepieciešams mainīt tikai daļu datu.

Piemērs PATCH izmantošanai C# ar 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();
}

Šeit, JsonPatchDocument satur instrukcijas, kā mainīt konkrētus User objekta laukus.