전산직으로 살아남기

GET, POST 이해하기 본문

Security/Web Application

GET, POST 이해하기

케이마 2024. 4. 22. 08:16
728x90
반응형

1. GET Method

GET method는 클라이언트에서 서버로 어떠한 리소스로부터 정보를 요청하기 위해 사용되는 메서드입니다. 쉽게 말하면 데이터를 읽거나 검색할 때에 사용되는 method라고 할 수 있습니다.

 

GET은 요청을 전송할 때 URL 주소 끝에 파라미터를 포함하여 전송하는데 이 부분을 쿼리 스트링(Query String)이라고 부릅니다.

 

예:  https://keima.tistory.com/?type=post&name=keima 

 

🗒️ 참고사항

  • GET은 불필요한 요청을 제한하기 위해 요청이 캐시될 수 있습니다.
  • 파라미터에 내용이 노출되기 때문에 민감한 데이터를 다룰 때 GET 요청을 사용해서는 안됩니다.
  • GET 요청은 브라우저 기록에 남습니다.
  • GET 요청을 북마크에 추가할 수 있습니다.
  • GET 요청에는 데이터 길이에 대한 제한이 있습니다.
  • GET 요청은 성공시, 200(Ok) HTTP 응답코드를 XML, JSON 뿐만 아니라 여러 데이터(html,txt등)와 함께 반환합니다. 

 

2. POST Method

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

 

GET과 달리 전송해야될 데이터를 HTTP 메시지의 Body에 담아서 전송하기에 GET 방식보다 더 많은 데이터를 전송할 수 있습니다. (Limit : 2MB)

 

Body에 담아서 전송하기에 쿼리스트링으로 보내는 GET보다 보안면에서 안전하다고 생각할 수 있지만, POST 요청도 브라우저 개발자 도구나 Fiddler로 요청 내용을 확인할 수 있기 때문에 민감한 정보라면 반드시 암호화 후 전송해야됩니다.

 

POSTMAM 예시
POSTMAM 예시

 

🗒️ 참고사항

  • POST 요청은 캐시되지 않습니다.
  • POST 요청은 브라우저 기록에 남아 있지 않습니다.
  • POST 요청은 북마크에 추가할 수 없습니다.
  • POST 요청에는 데이터 길이에 제한이 없습니다.
  • POST 요청 중 자원 생성은 201(Created) HTTP 응답 코드를 반환합니다.

 

 

출처

 

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

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

velog.io

 

728x90
반응형

'Security > Web Application' 카테고리의 다른 글

REST API 이해하기  (0) 2024.06.05
Proxy Server 이해하기  (0) 2024.05.24
웹서버과 WAS의 차이  (0) 2024.05.20
IIS Log 분석하기  (0) 2024.05.13