본문 바로가기

개발 지식

GET POST 차이점

반응형

GET 특징

  • URL에 변수(데이터)를 포함시켜 요청한다.
  • 데이터를 Header(헤더)에 포함하여 전송한다.
  • URL에 데이터가 노출되어 보안에 취약하다.
  • 전송하는 길이에 제한이 있다.
  • 캐싱할 수 있다.

GET 방식은 데이터를 URL에 넣도록 설계된 방식이다. URL의 길이가 정해져 있기 때문에, 많은 양의 정보를 전달할 수 없으며 URL 형식에 맞지 않는 파라미터 이름이나 값은 인코딩하여 전달해야 한다. 특별히 전송하는 데이터가 없으므로 GET 방식에서 바디는 보통 빈 상태로 전송이 되며, 헤더의 내용 중 Body의 데이터를 설명하는 Content-type 헤더필드도 들어가지 않는다.

POST 특징

  • URL에 변수(데이터)를 노출하지 않고 요청한다.
  • 데이터를 Body(바디)에 포함시킨다.
  • URL에 데이터가 노출되지 않아서 기본 보안은 되어있다.
  • 전송하는 길이에 제한이 없다.
  • 캐싱 불가

POST 방식은 Body에 데이터를 넣어서 전송하는 방식이다. 헤더필드 중 Body의 데이터를 설명하는 Content-Type이라는 헤더 필드가 들어가고 어떠한 데이터 타입인지 명시해준다. 데이터를 바디에 넣는 장점 때문에 메세지 길이의 제한은 없지만 최대 요청을 받는 시간인 Time Out이 존재하므로 클라이언트에서 페이지를 요청하고 기다리는 시간이 존재한다. URL에 데이터가 노출되지 않으므로 즐겨찾기나 캐싱이 불가능하지만 쿼리스트링(문자열)데이터 뿐만 아니라, 라디오 버튼, 텍스트 박스와 같은 UI Component 값도 전송이 가능하다.



Reference : https://mangkyu.tistory.com/17

반응형

'개발 지식' 카테고리의 다른 글

Prometheus 프로메테우스 란?  (0) 2020.04.08