본문 바로가기
Web/HTTP

[HTTP] GET & POST

by foreverever 2019. 5. 1.
반응형

1. GET & POST

  • HTTP Request 메서드

  • 서버에 요청하는 방식

  • 쉽게 클라이언트가 서버에게 "get방식으로 데이터를 전달해줘!" 혹은 "post방식으로 내 소중한 정보를 전달할게!" 라고 요구하는 방식

2. GET

  • URL 형식으로 서버 측에 데이터(리소스)를 요청

  • URL 끝에 ?와 요청 파라미터를 붙여서 전송 -> 쿼리스트링 형태('이름 = 값')

  • 예시> www.testurl.com/get_test ?name1=value1&name2=value2

  • 데이터를 URL의 파라미터로 전송하기 때문에 대용량 데이터 전송이 힘들다

  • 요청한 정보가 URL에 노출됨

  • Conditional GET : 최초 리소스 요청 이후의 요청(2번째 요청부터) 때는 첫 요청의 응답에 포함된 HTTP 헤더 정보를 참고하여 변경사항 체크

  • 멱등성 (연산을 몇 번하더라도 결과가 같은 것) 보장하기 때문에 캐시 가능

 

3. POST

  • HTTP 패킷의 body에 데이터를 담아서 서버에 요청

  • 많은 양의 데이터를 보낼 수 있다

  • URL상에 데이터가 노출되지 않기 때문에 GET방식보다 보안이 좋다

  • 캐시 X

4. 언제 GET을 쓰고, 언제 POST를 쓰는게 좋을까?

GET은 데이터를 가져온다는(조회) 개념이고, POST는 어떤 행위를 수행한다는 개념으로 받아들이면 이해가 쉬울 듯 하다.

 

GET

1. 서버에 저장된 특정 데이터(리소스)를 단순히 조회하고 싶을 때 사용한다.
2. 데이터의 상태값, 내용 등을 바꾸지 않는 경우에 사용한다.

<예시>
게시판 글 목록 조회, 회원 리스트 조회

 

POST

1. 서버에 새로 데이터를 추가하는 경우 사용한다.
2. 기존 데이터의 상태값을 바꿀때 사용한다.

<예시>
회원가입, 게시판 글 쓰기 및 수정

 

적극적인 지적 환영합니다.

반응형

'Web > HTTP' 카테고리의 다른 글

[HTTP] HTTP Status Code  (0) 2022.08.15
[HTTP] REST  (0) 2022.06.01
[HTTP] HTTP  (0) 2019.05.01