GET/POST​

less than 1 minute read

웹 프로그래밍을 하면서 GET과 POST 참 많이 사용하게 됐다. 근데 GET 과 POST 의 차이점이 뭔지 질문 받았을때 ‘어? 뭐지?’ 라고 생각했다.
면접때 GET관련 질문에서 최종질문이 ‘GET의 뒤쪽에 붙는 데이터의 최대 용량은 몇인가?’ 였으니 그쪽에서 바란 답은 ‘GET은 데이터가 주소 뒤쪽에 붙는다.’ 인거 같지만. 이거 말고도 차이점이 있겠지.

GET

  • 데이터가 URL 의 뒤쪽에 노출된다.
  • URL 데이터의 크기에 제한이 있다.
  • 캐싱 사용으로 속도가 빠르다.
  • 주로 데이터 조회시 사용.(자세한 내용은 RESTful 확인)

POST

  • HTTP 패킷의 body 에 데이터를 담는다.
  • GET 보다 많은양의 데이터 전달 가능.
  • 주로 데이터 수정시 사용.(자세한 내용은 RESTful 확인)

구글링 해본 결과는 위와 같다.
여기에서 좀 확인해보고 싶은게 데이터 용량이다.
어디에서는 GET의 용량제한은 256자라는 등, 이제는 제한이 없다는 등 의견이 분분하다. POST도 용량제한이 없다는 말도 있고, GET보다는 크긴하지만 제한이 있다는 말도 있다. HTTP/1.1 에서는 제한이 있고, HTTP/2 에서는 제한이 없다는 말도 있다.
좀 찾아보니 브라우저 마다 조금씩 다르기는 하지만 인터넷 익스플로러에서 약 2천자의 제한이 있었다. HTTP/2 에서 제한이 없어졌다 해도, 결국 브라우저 제한 때문에 2천자가 넘지 않도록 하는게 좋을 듯.


참고1. 스택오버플로우

참고2. 마이크로소프트웨어 인터넷 익스플로러

Tags: ,

Categories:

Updated: