Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's a basic property of HTTP "GET". Or it's supposed to be. "GET" is not supposed to change server site state. That's what "POST" is for. This matters if there's a cache in the middle, since caches tend to assume that GET requests are idempotent and can be served from cache. Cloudflare assumes that. POST requests have to go through to the real server.


Get is idempotent because it's the identity function. It does not change the state of the data. So it's a trivial case of idempotency.

A more interesting function is PUT (idempotent) vs POST (not idempotent)


GET is supposed to be idempotent. But there are sites and APIs where URL parameters make something happen on a GET.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: