in.add()

HTTP의 GET과 POST 본문

CS/Network

HTTP의 GET과 POST

idan 2021. 9. 5. 21:08

둘 다 HTTP 프로토콜을 이용해서 서버에 무엇인가를 요청할 때 사용하는 방식이다. 하지만 둘의 특징을 제대로 이해하여 기술의 목적에 맞게 알맞은 용도에 사용해야한다.

GET 방식

  • 서버로부터 정보 조회하기 위하여 설계된 메소드입니다.
  • Select의 성향을 가지고 있다. 서버에서 어떤 데이터를 가지고 와서 보여주는 용도이지 서버의 값이나 상태를 바꾸지는 않는다.
  • 요청을 전송할 때 필요한 데이터를 Body에 담지 않고, URL의 끝에 쿼리스트링을 통해 전송한다.
  • 전송하는 길이에 제한이 있다.
  • 동일한 요청을 여러 번 수행하더라도 동일한 응답이 와야한다.

POST 방식

  • 정보 생성/변경하기 위해 설계된 메소드입니다.
  • 서버의 값이나 상태를 바꾸기 위해서 사용한다.
  • 요청을 전송할 때 Body에 담아서 전송한다.
  • HTTP 메세지의 Body는 길이의 제한 없이 데이터를 전송할 수 있어서 대용량의 데이터를 전송할 수 있다.
  • 서버에게 동일한 요청을 여러 번 전송해도 응답은 항상 다를 수 있다.

부수적인 차이점을 좀 더 살펴보자면 GET 방식의 요청은 브라우저에서 Caching 할 수 있다. 때문에 POST 방식으로 요청해야 할 것을 보내는 데이터의 크기가 작고 보안적인 문제가 없다는 이유로 GET 방식으로 요청한다면 기존에 caching 되었던 데이터가 응답될 가능성이 존재한다. 때문에 목적에 맞는 기술을 사용해야 하는 것이다.

'CS > Network' 카테고리의 다른 글

OSI 7 계층  (0) 2021.09.09
HTTP, HTTPS  (0) 2021.09.04
HTTP의 Keep Alive  (0) 2021.09.03
Comments