Sobes.tech
Junior

REST API'da PUT usulidan gapiring.

sobes.tech AI

AIdan javob

PUT usuli resursni manba uchun yoki yangilash uchun ishlatiladi.

Asosiy xususiyatlar:

  • Idempotentlik: Bir xil PUT so'rovi takrorlanganda, serverdagi resurs bir xil holatga keladi (garchi server javobi farq qilishi mumkin).
  • To'liq almashtirish: PUT so'rovi to'liq resursni yuboradi va mavjudini o'zgartiradi.
  • Yaratish yoki yangilash: Agar URI bo'yicha resurs mavjud bo'lmasa, PUT uni yaratadi. Mavjud bo'lsa, yangilaydi. Muvaffaqiyatli PUT so'rovida resursning yo'qligi odatda 201 Created holat kodini qaytaradi. Mavjud resursni yangilash odatda 200 OK yoki 204 No Content (jismoniy tanasiz) bilan javob beradi.

Oddiy foydalanish holatlari:

  • Foydalanuvchi profilini to'liq yangilash.
  • Agar mijoz uning URI'sini belgilasa, resurs yaratish.

PUT so'rovi misoli:

PUT /users/123 HTTP/1.1
Host: api.example.com
Content-Type: application/json

{
  "id": 123,
  "name": "Yangi Ism",
  "email": "new.email@example.com"
}

Server bu so'rovni oladi va yoki 123 ID bilan foydalanuvchini yaratadi yoki bu ID ga ega foydalanuvchi haqidagi ma'lumotlarni to'liq o'zgartiradi.

PUT va POST o'rtasidagi farqlar:

  • PUT ma'lum bir URI ostida resursni yangilash yoki yaratish uchun ishlatiladi, bu URI mijoz tomonidan belgilanadi. POST yangi resursni yaratish uchun ishlatiladi, bu yerda server yangi resurs URI'sini belgilaydi yoki boshqa HTTP usullarga mos kelmaydigan harakatlar uchun.
  • PUT idempotent, POST esa emas. Bir xil tanani takroriy POST so'rovlari bir nechta teng resurslarni yaratishi yoki turli yon ta'sirlar keltirib chiqarishi mumkin.

PUT va POST taqqoslash jadvali:

Xususiyat PUT POST
Maqsad Resursni yaratish yoki yangilash Resursni yaratish, ma'lumot yuborish
Idempotentlik Ha Yo'q
URI aniqlash Mijoz tomonidan belgilangan Server tomonidan belgilangan
Resursga ta'sir To'liq o'zgartiradi yoki yaratadi Odatda qo'shadi yoki harakatni bajaradi