[네트워크] GET POST

Gavin Ariel Lee·2021년 8월 8일
0

GET Method

  • 주로 데이터 조회시 사용
  • GET 요청 성공시 JSON이나 XML 데이터와 함께 200(OK) HTTP 응답코드 리턴
  • 에러 발생시 주로 404(Not found), 400(Bad Request) 발생
  • Idempotent(같은 요청을 여러번 하더라도 결과가 매번 동일)
  • 데이터의 변형이 없는 안전한 경우에만 사용
  • GET 요청에 필요한 데이터를 URL(Query String)에 포함
    (URL에 붙이므로 HTTP 패킷 Header에 포함,
    Body는 빈 상태 -> Content-Type이라는 헤더필드 들어가지 않음)
  • 데이터를 보내는 양에 한계가 있다.

POST Method

  • 주로 새로운 리소스 생성/변경시 사용
  • POST 요청 성공시 201(Created) HTTP 응답코드 리턴
  • Non-idempotent
    (같은 POST 요청을 여러번 전송해도 응답은 항상 다를 수 있다.)
  • POST 요청에 필요한 데이터를 Body에 포함
    (Body의 데이터를 설명하는 Content-Type 헤더필드 반드시 포함)

GET POST 비교

GETPOST
History 기록파라미터들이 URL의 일부->브라우저 히스토리에 남는다.파라미터가 브라우저 히스토리에 저장X
북마크파라미터들이 URL로 인코딩되므로 북마크 가능파라미터 request body에 포함 -> 북마크 불가능
Data Type 제한ASCII characters만 허용제한X
Data 길이 제한안전한 URL 길이는 2048 characters제한X
캐시idempotent하기 때문에 캐시Oidempotent하지 않기 때문에 캐시X

POST 방식이 GET 방식보다 보안에 좋다?

GET과 POST 모두 보내는 데이터를 클라이언트 측에서 볼 수 있음
GET방식이 URL로 표현되어 노력없이 볼 수 있다는 차이뿐
보안을 생각하면 두 방식보두 암호화가 필요하다

GET 방식이 POST 방식보다 빠르다.

GET방식의 요청은 캐싱(한번 접근 후 또 요청할 시 빠르게 접근하기 위한 데이터 저장)을 하기때문에 빠르다

profile
As you wish

0개의 댓글