본문으로 바로가기

GET과 POST

category 네트워크 2019. 7. 23. 15:43
728x90

네트워크 전송의 get과 post

** get과 post는 클라이언트가 서버로 요청을 보내는 방법(HTTP Method)

 

1. GET방식

  • URL에 변수(데이터)를 포함시켜 요청한다
  • 데이터를 Header에 포함하여 전송
  • URL에 데이터가 노출되어 보안에 취약
  • 전송 길이 제한
  • 캐싱 가능

-- 간단한 데이터를 URL에 넣도록 설계된 방식으로 데이터를 보내는 양에 한계가 있음 == URL길이가 정해져 있음

-- URL에 쿼리 스트링이 그대로 보내짐 == 보안성이 떨어짐

-- POST방식보다 속도가 빠르다

 

get방식 전송은 크기 제한도, 보안성 문제도 있지만 간단한 데이터 전송 및 노출되어도 상관없는 데이터를 빠르게 전송할 때 사용하게 된다.

 

캐싱(Cashin)

캐싱은 한번 접근 후, 다시 요청 시 빠르게 접근하기 위해 레지스터에 데이터를 저장시켜 놓음

2. POST방식

  • URL에 변수(데이터)를 노출하지 않고 요청한다

  • 데이터를 Body에 포함시킨다

  • URL에 데이터가 노출되지 않아서 기본 보안 유지

  • 전송 길이에 제한이 없다

  • 캐싱할 수 없다

-- 일정 크기 이상의 데이터를 보내야 할 때 사용한다. == get의 255자 이상을 넘는 크기를 사용할 때

-- 서버 전송 이전에 인코딩, 전송받은 서버는 디코딩 작업을 진행 == 속도가 느리다

 

post방식 전송은 문자 데이터 이외에도 텍스트 박스 같은 객체들의 값도 전송이 가능하기 때문에 좀 더 많은 양의 데이터를 보낼 수 있다.

 

GET과 POST의 차이점

  • get은 주로 웹 브라우저가 웹 서버에 데이터를 요청할 때 사용
  • Post는 웹 브라우저가 웹 서버에 데이터를 전달하기 위해 사용
  • get을 사용하면 웹 브라우저에서 웹 서버로 전달된 데이터가 인코딩 되어 URL에 붙는다.
  • Post방식은 전달되는 데이터가 보이지 않는다
  • get방식은 전달된 데이터가 255개의 문자를 초과하면 문제가 발생할 수 있다.

 

 

728x90

'네트워크' 카테고리의 다른 글

DNS란 무엇인가?  (0) 2019.08.06
WAN과 LAN  (0) 2019.07.23
사설IP와 공인IP 그리고 NAT  (0) 2019.07.14