Articles

Idempotent

egy HTTP módszer idempotent, ha egy azonos kérés egyszer vagy többször egymás után is elvégezhető, ugyanolyan hatással, miközben a kiszolgálót ugyanabban az állapotban hagyja. Más szavakkal, az idempotens módszernek nem lehetnek mellékhatásai (kivéve a statisztikák megőrzését). Helyesen végrehajtva a GETHEADPUT és DELETE módszerek idempotensek, de nem a módszer. Minden biztonságos módszer is idempotent.

ahhoz, hogy idempotent legyen, csak a kiszolgáló tényleges back-end állapotát kell figyelembe venni,az egyes kérések által visszaküldött állapotkód eltérhet: a DELETE első hívása valószínűleg visszaadja a 200, míg az egymást követő valószínűleg visszaadja a 404. Egy másik következménye a DELETE hogy idempotent, hogy a fejlesztők ne hajtsák végre RESTful API egy delete utolsó bejegyzés funkciót a DELETE módszer.

vegye figyelembe, hogy egy módszer idempotenciáját a szerver nem garantálja, egyes alkalmazások helytelenül törhetik meg az idempotence korlátozást.

GET /pageX HTTP/1.1 is idempotent. Többször egymás után hívva az ügyfél ugyanazokat az eredményeket kapja:

GET /pageX HTTP/1.1GET /pageX HTTP/1.1GET /pageX HTTP/1.1GET /pageX HTTP/1.1

POST /add_row HTTP/1.1 nem idempotens; ha többször hívják, akkor több sort ad hozzá:

POST /add_row HTTP/1.1POST /add_row HTTP/1.1 -> Adds a 2nd rowPOST /add_row HTTP/1.1 -> Adds a 3rd row

DELETE /idX/delete HTTP/1.1 idempotent, még akkor is, ha a visszaküldött állapotkód a kérések között változhat:

DELETE /idX/delete HTTP/1.1 -> Returns 200 if idX existsDELETE /idX/delete HTTP/1.1 -> Returns 404 as it just got deletedDELETE /idX/delete HTTP/1.1 -> Returns 404

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük