Sobes.tech
Junior — Middle

Čo sú ne-idempotentné HTTP požiadavky a v čom sa líšia od idempotentných?

sobes.tech AI

Odpoveď od AI

Idempotentné HTTP požiadavky sú také, ktoré pri opakovanom vykonaní s rovnakými parametrami nezmenia stav servera po prvom volaní. Inými slovami, bez ohľadu na to, koľkokrát takúto požiadavku odošlete, výsledok bude rovnaký a server nevykoná žiadne ďalšie zmeny.

Príklady idempotentných metód: GET, PUT, DELETE.

Neidempotentné HTTP požiadavky sú také, ktoré pri opakovaní môžu každýkrát viesť ku zmene stavu servera. Napríklad POST požiadavka, ktorá vytvorí nový záznam, pri opakovanom odoslaní vytvorí niekoľko záznamov.

Rozdiely:

  • Idempotentné: opakované požiadavky nemenia výsledok (napríklad aktualizácia zdroja rovnakými dátami).
  • Neidempotentné: opakované požiadavky vedú k novým zmenám (napríklad vytváranie nových záznamov).

Je dôležité to brať do úvahy pri navrhovaní API a automatizácii testov, aby sa predišlo neželaným vedľajším účinkom.