Computer Science/NetWork

📌GET과 POST의 차이점 완벽 정리: 쿼리 파라미터부터 JSON 전송까지

추천캐릭터 2022. 6. 7. 11:08
728x90
반응형

HTTP 요청 방식인 GET과 POST는 웹 개발자에게 매우 익숙한 개념이지만, 실제로 데이터를 어떻게 전달하는지 정확히 알고 계신가요? 이 글에서는 GET과 POST의 데이터 전달 차이점을 구조적으로 정리해 드립니다.


✅ 1. GET 요청 – 쿼리 파라미터 방식

  • 형식:
    GET /url?username=kim&age=20
  • 특징
    • 데이터가 URL에 포함되어 전송
    • 브라우저 주소창에 보임
    • 캐시 저장 가능, 북마크 가능
    • 전송 데이터 길이에 제한 있음
  • 사용 예
    • 검색, 목록 필터링 등 조회 요청
    • 데이터 변경이 없는 요청

✅ 2. POST 요청 – HTML Form 방식

  • Content-Type: application/x-www-form-urlencoded
  • 형식:
    username=kim&age=20
    (HTTP Body에 담겨 전송)
  • 특징
    • 주로 HTML <form> 태그에서 사용
    • URL이 아닌 메시지 바디에 데이터 포함
    • GET보다 보안성이 높음 (노출되지 않음)
  • 사용 예
    • 회원가입, 로그인, 주문 등 사용자 입력 전송

✅ 3. POST/PUT/PATCH – HTTP API 방식 (JSON 전송)

  • Content-Type: application/json
  • 형식 예시:
{
  "username": "kim",
  "age": 20
}
  • 특징
    • REST API, 비동기 통신(AJAX)에서 일반적
    • JSON 외에도 XML, TEXT 가능
    • 구조적이고 유연한 데이터 전송 가능
  • 사용 예
    • 프론트엔드 → 백엔드 API 통신
    • 모바일 앱, SPA 등에서 서버로 데이터 전달 시

📚 요약 비교 표

구분전송 위치데이터 형식주요 용도
GET URL 쿼리 ?key=value 조회, 검색
POST (Form) HTTP Body key=value 회원가입, 로그인
POST/PUT (API) HTTP Body JSON 등 REST API 통신
 

🎯 결론

  • 단순 조회는 GET
  • 폼 전송은 POST (x-www-form-urlencoded)
  • REST API 통신은 JSON 기반 POST/PUT/PATCH

요청 목적과 환경에 따라 적절한 방식을 선택하는 것이 중요합니다.

728x90
반응형