[HTTP Method] post vs get

ITWeb/스크랩 2007. 4. 18. 13:17

누가 http method 중 post 와 get 의 차이점이 무엇인지 물어 보더라구요.
인터넷개론에서 배웠던것 같은데 지금은 실무를 하면서 개념적으로 이해를 하면서 사용을 하다 보니 명확하게 이론적으로 설명을 잘 못해 주겠더라구요..

그래서 찾아 봤습니다.. ^^;

ref. http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

get 과 post 만.. 간단히 설명 드리겠습니다.

- get method
    이 메서드는 form 에 포함되어 있는 entity 즉 request uri 에 의해서 전달이 되어 집니다.
    더 쉽게 얘기 하자면 query string 으로 해서 data 가 전달되는 형식 입니다.
    그냥 plain/text 로 전달되는게 아니고 application/x-www-form-urlencoded 되어 전달 됩니다.

- post method
    이 메서드는 get 방식과 틀리게 body 를 통해서 전달이 되게 됩니다.
    쉽게 얘기 해서 눈으로 봐서는 어떤 data 가 오고 가는지 확인이 힘들죠.
    body 패킷을 분석하게 되면 알수가 있게 됩니다.
   
추가적으로 보안과 관련된 내용인데요.
중요한 정보에 대해서는 get 을 사용하지 말고 post 를 사용하라고 되어 있습니다.
ref. http://www.w3.org/Protocols/rfc2616/rfc2616-sec15.html#sec15.1.3
왜 그런지는 아시죠!!
get 보다는 안전 하지만 역시 body 의 패킷을 분석하면 다 알수 있기 때문에 하나의 guideline 이라고 보시면 좋을것 같습니다.
(보안에 민감한 내용들은.. SSL 을 사용하기를 권장하구요 ^^* https:// 말이죠.. )

: