ZeroBase/CS

HTTP메서드 GET, POST 차이

Red_Horse 2025. 7. 28. 23:59

구분 GET POST
의미 리소스(데이터)를 조회하는 데 사용 서버에 데이터를 생성하거나 제출할 때 사용
데이터 전달 위치 URL(쿼리 스트링: ?key=value) HTTP 메시지의 Body 영역
전송 길이 제한 있음 (일반적으로 2000자 미만) 없음 (서버나 클라이언트 제한에 따라 달라짐)
HTTP 상태 코드 성공 시 보통 200 OK 반환 성공 시 보통 201 Created 반환
캐싱 여부 캐싱 가능 (브라우저, 프록시 등에서) 캐싱 불가능
보안성 URL에 정보 노출 → 보안에 취약 메시지 본문에 포함되어 URL에 노출되지 않음 → 상대적으로 안전
브라우저 기록 요청 URL이 기록에 남음 요청 내용은 기록되지 않음
전송 가능한 데이터 ASCII 문자 기반 (쿼리 파라미터 형식) 모든 형태의 데이터 (JSON, 파일 등 포함) 전송 가능
사용 예시 게시글 목록 조회, 유저 정보 보기 등 회원가입, 글 작성, 파일 업로드 등
 

주의 사항

  • GET은 민감한 정보(비밀번호, 카드번호 등)를 전송할 때 사용하면 안 됩니다.
  • POST는 데이터가 본문에 포함되므로 보안적으로는 더 적절하지만, HTTPS를 통해 암호화하지 않으면 여전히 위험할 수 있습니다.

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

네트워크 장치  (1) 2025.07.30
HTTP 메서드 PUT, PATCH 차이  (3) 2025.07.29
토큰 기반 로그인 방식  (0) 2025.07.26
세션기반 인증 방식  (0) 2025.07.25
로컬스토리지, 세션스토리지, 쿠키의 공통점과 차이점  (1) 2025.07.25