Sobes.tech
Junior — Middle

Чӣ тавр фарқ кардани усулҳои GET ва POST дар таҳияи REST API ва дар кадом ҳолатҳо истифода мешаванд?

sobes.tech AI

Ҷавоб аз AI

Режимҳои GET ва POST — ду асосии усулҳои HTTP, ки дар REST API истифода мешаванд, бо мақсадҳои гуногун:

  • GET барои гирифтани маълумот аз сервер истифода мешавад. Он бояд идемпотентӣ бошад ва ҳолати серверро тағир надиҳад. Дархостҳои GET метавонанд кэш карда шаванд ва аз ҷониби браузер кэш карда шаванд.

  • POST барои эҷоди захираҳои нав ё иҷрои амалҳое, ки ҳолати серверро тағир медиҳанд, истифода мешавад. Дархостҳои POST идемпотентӣ нестанд ва одатан дорои бадан бо маълумот мебошанд.

Вақте истифода бурдан:

  • GET — вақте ки бояд маълумот гиред, масалан, рӯйхати корбарон ё тафсилоти объектҳои мушаххас.
  • POST — вақте ки бояд объект нав эҷод кунед, формро фиристед ё амалиеро иҷро кунед, ки маълумотро тағир медиҳад.

Масалан:

GET /users/123 HTTP/1.1

POST /users HTTP/1.1
Content-Type: application/json

{
  "name": "Иван",
  "email": "ivan@example.com"
}

Дар санҷишҳо, муҳим аст, ки санҷед, ки дархостҳои GET маълумотро тағир намедиҳанд ва POST — онҳоро дуруст эҷод ё тағир медиҳанд.