GET과 POST

김형석·2022년 8월 3일
0

개념공부 스터디

목록 보기
11/27

GET 방식이든 POST 방식이든 둘 다 브라우저가 서버에 요청하는 것이다.

GET방식

GET 메서드는 클라이언트에서 서버로 리소스에서 데이터를 요청하기 위해 사용되는 메서드이다.

쉽게, 데이터를 읽거나(Read), 검색(Retrieve)할 때에 사용되는 메서드라고 할 수 있다.

GET 요청을 전송할 때 URL 주소 끝네 파라미터로 포함되어 전송되며, 이 부분을 쿼리 스트링이라고 부른다.

GET 요청은 오로지 데이터를 읽을 때만 사용되고 수정할 때는 사용하지 않는다.

특징

  • GET 은 불필요한 요청을 제한하기 위해 요청이 캐시될 수 있다.
  • 파라미터에 내용이 노출되기 때문에 민감한 데이터를 다룰 때 GET 요청을 사용하면 안된다.
  • GET 요청은 브라우저 기록에 남는다.
  • GET 요청에는 데이터 길이에 대한 제한이 있다.
  • GET 요청을 북마크에 추가할 수 있다.

POST

POST 메서드는 리소스를 생성/업데이트하기 위해 서버에 데이터를 보내는 데 사용된다.

GET과 달리 전송해야될 데이터를 HTTP 메세지의 Body에 담아서 전송한다.
Body의 타입은 요청 헤더의 Content-Type에 요청 데이터의 타입을 표시 따라 결정된다.

POST는 데이터가 Body로 전송되고, 내용이 눈에 보이지 않아 GET보다 보안적인 면에서 안전하다고 생각할 수 있지만, POST 요청도 내용을 확인할 수 있기 때문에 민감한 데이터의 경우 반드시 암호화해 전송해야 한다.

특징

  • POST 요청은 캐시되지 않습니다.
  • POST 요청은 브라우저 기록에 남아 있지 않느다.
  • POST 요청을 북마크에 추가할 수 없다.
  • POST 요청에는 데이터 길이에 대한 제한이 없다.

GET 과 POST의 차이점

사용목적

  • GET은 서버의 리소스에서 데이터를 요청할 때, POST는 서버의 리소스를 새로 생성하거나 업데이트할 때 사용
  • DB로 따지면 GET은 SELECT에 가깝고, POST는 Create에 가깝다고 보면 된다.

요청에 body 유무

  • GET 은 URL 파라미터에 요청하는 데이터를 담아 보내기 때문에 HTTP 메시지에 body가 없다.
  • POST 는 body 에 데이터를 담아 보내기 때문에 존재
profile
블로그 이사 : https://hengxi.tistory.com

0개의 댓글