REST API kontekstida HTTP PUT va PATCH metodlari orasidagi farqlarni tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
HTTP PUT va PATCH usullari REST API da resurslarni yangilash uchun ishlatiladi, ammo ularning semantika va xatti-harakatlari farq qiladi:
-
PUT — bu idempotent usul bo'lib, serverdagi butun resursni yangi taqdimot bilan o'zgartiradi, bu taqdimot so'rovning tanasida yuboriladi. Agar resurs mavjud bo'lmasa, uni yaratish mumkin. Takroriy so'rovlar bir xil ma'lumotlar bilan bir xil natijani beradi.
-
PATCH — resursning qisman yangilanishi uchun ishlatiladi. So'rov tanasida faqat o'zgartirilishi kerak bo'lgan maydonlar yuboriladi, qolganlari o'zgarmaydi. PATCH majburiy emas, ammo bo'lishi mumkin.
Misol:
PUT /users/123
{
"name": "Иван",
"email": "ivan@example.com"
}
123 foydalanuvchi resursini yangi ob'ekt bilan, nom va email bilan o'zgartiradi.
PATCH /users/123
{
"email": "newemail@example.com"
}
Faqat email maydonini yangilaydi, ism avvalgidek qoladi.