PUT va POST metodlari orasidagi farq nima? Ular bir xil so'rovni takror yuborilganda qanday harakat qiladi? PATCH nima qiladi?
sobes.tech AI
AIdan javob
HTTP PUT va POST usullari semantika va xulq-atvor jihatidan farq qiladi:
-
PUT — idempotent usul, belgilangan URL bo'yicha resursni to'liq yangilash uchun ishlatiladi. Bir xil PUT so'rovini qayta yuborish natijani o'zgartirmaydi, chunki resurs bir xil ma'lumotlar bilan yoziladi.
-
POST — idempotent bo'lmagan usul, odatda yangi resurslar yaratish yoki harakatlarni bajarish uchun ishlatiladi. POST so'rovini qayta yuborish duplikatlarni yoki operatsiyani takrorlashga olib kelishi mumkin.
-
PATCH — resursning qisman yangilanishi uchun ishlatiladi, faqat o'zgartirilgan maydonlar yuboriladi. PUT bilan farqli o'laroq, u butun resursni o'zgartirmasdan, mavjud ob'ektga o'zgarishlar qo'llaydi.
Misol:
PUT /users/123
{
"name": "Иван",
"age": 30
}
PATCH /users/123
{
"age": 31
}
POST /users
{
"name": "Иван",
"age": 30
}
Bir xil ma'lumotlar bilan PUT-ni qayta yuborish resursni o'zgartirmaydi, POST-ni qayta yuborish yangi foydalanuvchi yaratadi, va PATCH-ni qayta yuborish yoshni yana yangilaydi.