Articles

Idempotentních

HTTP metoda je idempotentní, jestliže byla stejná žádost může být provedena jednou nebo několikrát za sebou se stejným účinkem při opuštění serveru ve stejném stavu. Jinými slovy, metoda idempotent by neměla mít žádné vedlejší účinky (s výjimkou vedení statistik). Provedena správně, GETHEADPUTDELETE metody jsou idempotentní, ale není POST metoda. Všechny bezpečné metody jsou také idempotentní.

být idempotentních, pouze skutečné back-end stavu serveru je považován za vrácený kód stavu tím, že každý požadavek se může lišit: první volání DELETE budou pravděpodobně vrátit 200, zatímco po sobě jdoucích jedniček bude pravděpodobně vrátí na 404. Další implikace DELETE být idempotentních je, že vývojáři by měli implementovat RESTful Api s odstranit poslední záznam funkce pomocí DELETE metoda.

Všimněte si, že idempotence metody není serverem zaručena a některé aplikace mohou nesprávně přerušit omezení idempotence.

GET /pageX HTTP/1.1 je idempotentní. Volal několikrát za sebou, klient dostane stejné výsledky:

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

POST /add_row HTTP/1.1 není idempotentní, pokud je volána několikrát, přidá se několik řádků:

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 je idempotentních, i když se vrátil stavový kód se může změnit mezi požadavky:

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

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *