brunch

You can make anything
by writing

C.S.Lewis

by 김선우 Jun 26. 2016

멱등성

연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 의미한다.

동일 요청은 동일 응답을 가져야 한다는 의미가 아니며, 요청으로 어떤 부작용도 발생하지 말아야 한다는 의미가 아님의 유의해야 한다.


GET은 멱등 메서드지만, POST는 멱등 메서드가 아니다.

주의할 점은.. 

HTTP 1.1 스펙에 GET은 멱등 메서드라고 정의되어있지만, 멱등이 아닌 doGet()을 개발자가 구현하지 못하도록 할 수는 없다.



GET / POST 가 나왔으니 추가하자면..


GET 요청의 경우 URI 자체에 파라미터가 포함되어서 다른 사람에게 전달할 때 편리하고,

같은 시점에 똑같은 키워드를 통해 여러 번 검색하여도 검색 결과의 차이가 없을 것이다.

-> '부작용이 없다'라고 표현 가능


예) 구글에서 브런치의 검색 결과를 전달하는 것 

https://www.google.co.kr/?ion=1&espv=2#q=%EB%B8%8C%EB%9F%B0%EC%B9%98 

위 URL 그대로 다른 사람에게 전달가능


POST의 경우 메시지 본문에 파라미터가 포함되어 있기 때문에 즐겨찾기를 통해 URL을 보존하여야 한다.




브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari