Sobes.tech
Senior

PUT жана POST ыкмаларынын айырмасы эмнеде? Алар бир эле суроону кайра жибергенде кандай жүрүм-турум көрсөтүшөт? PATCH эмне кылат?

sobes.tech AI

AIден жооп

HTTP PUT жана POST ыкмалары семантика жана жүрүм-турум боюнча айырмаланат:

  • PUT — идемпотент ыкма, белгилүү URL боюнча ресурсту толук жаңылоого колдонулат. Ошол эле PUT суроосун кайра жиберүү натыйжаны өзгөртпөйт, анткени ресурс ошол эле маалыматтар менен кайра жазылат.

  • POST — идемпотент эмес ыкма, көбүнчө жаңы ресурстарды түзүү же аракеттерди аткаруу үчүн колдонулат. POST суроосун кайра жиберүү дубалдарга же операцияны кайра аткарууга алып келиши мүмкүн.

  • PATCH — ресурстун жарым-жартылай жаңылануусуна колдонулат, гана өзгөртүлгөн талаалар жөнөтүлөт. PUT менен айырмаланып, ал бүт ресурсту алмаштырбай, бар объектке өзгөртүүлөрдү колдонуп жатат.

Мисал:

PUT /users/123
{
  "name": "Иван",
  "age": 30
}

PATCH /users/123
{
  "age": 31
}

POST /users
{
  "name": "Иван",
  "age": 30
}

Бирдей маалыматтар менен PUT кайра жиберүү ресурсту өзгөртпөйт, POST кайра жиберүү жаңы колдонуучуну түзөт, жана PATCH кайрадан жашты жаңыртат.