TIL

[TIL] 22.11.11 get vs post

SH_Roh 2022. 11. 11. 04:06
반응형

get과 post는 http 메서드로, 클라이언트에서 서버로 무언가를 요청할 때 사용한다.

 

get

  • get은 클라이언트에서 정보를 요청하기 위해 사용하는 메서드이다.
  • 요청을 전송할 때 필요한 데이터를 쿼리스트링을 통해 전송한다. 이 때 요청 파라미터가 여러개면 &로 연결한다.
  • get은 불필요한 요청을 제한하기 위해 요청이 캐시될 수 있다.
  • 길이 제한이 있다.
  • 파라미터에 노출되기 때문에 중요한 정보를 다루면 안된다.

 

post

  • 클라이언트에서 서버로 리소스를 생성하거나 업데이트하기 위해 데이터를 보낼 때 사용하는 메서드이다.
  • 전송할 데이터를 http 메시지의 body 부분에 담아서 서버로 보낸다. body의 타입은 Content-Type 헤더에 따라 결정되고, Content-Type의 종류로는 application/x-www-form-urlencoded, text/plain, multipart/form-data등이 있다.
  • 길이 제한이 따로 없다.

 

get vs post 차이

get post
정보 요청 정보 전송, 업데이트
요청 body 없음 요청 body 있음
멱등 멱등 아님

 

멱등이란?

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

get은 리소스를 조회하기 때문에 여러번 요청해도 응답이 똑같기 때문에 멱등이다.

post는 리소스를 새로 생성하거나 업데이트할 때 사용되기 때문에 멱등이 아니라고 볼 수 있다.

반응형