GET vs POST
본문 바로가기
항해 후/예상 질문

GET vs POST

by 은돌1113 2022. 2. 4.

GET가져온다는 개념이고, POST수행한다는 개념으로 받아들이면 쉽습니다.

 

즉, GET은 서버에서 어떤 데이터를 가져와서 보여줄 때 사용합니다.

어떤 값이나 내용, 상태 등을 바꾸지 않는 경우에 사용하는 것입니다.

이에 비해, POST는 서버 상의 데이터 값이나 상태를 바꾸기 위해서 사용합니다.

 

게시판을 예로 들었을 때 글의 내용에 대한 목록을 보여주는 경우나, 글의 내용을 보는 경우는 GET에 해당합니다.

그리고 글의 내용을 저장하고, 수정할 때에 POST를 사용합니다.

 

  [ GET이란? ]  

 

GET method는 클라이언트에서 서버로, 어떠한 리소스로부터 정보를 요청하기 위해 사용되는 메서드입니다.

좀 더 쉽게 말하면, 데이터를 읽거나(Read), 검색(Retrieve) 할 때에 사용되는 method 입니다.

 

GET은 요청을 전송할 때 URL 주소 끝에 파라미터로 포함되어 전송되며,

이 부분을 쿼리 스트링(QueryStrinh)이라고 합니다.

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

따라서 이런 이유로 사용하면 안전하다고 간주합니다.

즉, 데이터의 변형의 위험 없이 사용할 수 있다는 뜻입니다.

 

  [ POST란? ]  

 

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

 

GET과 달리 전송해야 될 데이터를 HTTP 메시지의 Body에 담아서 전송합니다.

그리고 그 Body의 타입은 요청 헤더의 Context-Type에 요청 데이터의 타입을 표시하여 결정합니다.

(POST로 요청을 보낼 때 기재합니다.)

HTTP 메시지의 Body는 길이의 제한 없이 데이터를 전송할 수 있습니다.

그래서 POST 요청은 GET과 달리 대용량 데이터를 전송 할 수 있습니다.

 

이처럼 POST는 데이터가 Body로 전송되고,

내용이 눈에 보이지 않아 GET 보다 보안적인 면에서 안전하다고 생각할 수 있지만,

POST 요청도 크롬의 개발자 도구, Fiddler와 같은 툴로 요청 내용을 확인할 수 있기 때문에

민감한 데이터의 경우에는 반드시 암호화를 진행하여 전송해야 합니다.


 

Get과 Post의 차이를 아시나요?

제 질문에 답을 하지 못하겠다면, 이 글을 읽어보시는 걸 적극적으로 추천합니다.

velog.io

 

'항해 후 > 예상 질문' 카테고리의 다른 글

Redux  (0) 2022.02.04
Array vs LinkedList  (0) 2022.02.04
Life Cycle Method (라이프 사이클 메소드)  (0) 2022.02.04
TCP/UDP  (0) 2022.02.03
프로그램, 프로세스, 스레드란?  (0) 2022.02.03

댓글