📅날짜

2025/08/11

📖HTTP Request & HTTP Response 정리

📌 HTTP Request

클라이언트가 서버에 특정 작업을 요청하는 메시지

1.구조

Start Line

  • 요청 메서드(Method): GET, POST, PUT, DELETE 등
  • 요청 대상(Request Target): URL 또는 경로
  • HTTP 버전: HTTP/1.1, HTTP/2 등
  • ex) GET /index.html HTTP/1.1

Headers

  • 요청에 대한 부가 정보
  • 예시
    - Authorization: 인증 정보
    - Origin: 요청이 발생한 출처
    - Cookie: 클라이언트 저장 쿠키
    - Content-Type: 요청 데이터 타입 (application/json, multipart/form-data 등)
    - 서버는 이 값을 참고해 적절한 응답을 생성

Body (선택)

  • POST, PUT, PATCH 요청에서 주로 사용
  • 서버로 전송할 실제 데이터 (폼 데이터, JSON 등)
  • GET 요청에서는 보통 Body가 없음

📌 HTTP Response

서버가 클라이언트 요청에 응답하는 메시지

1. 구조

Status Line

  • HTTP Version: HTTP/1.1, HTTP/2 등
  • Status Code: 요청 처리 결과를 나타내는 3자리 숫자
  • Status Text: 상태 코드에 대한 짧은 설명
  • 예시 HTTP/1.1 200 OK

Headers

  • 응답에 대한 부가 정보
  • 예시
    - Content-Type: 응답 데이터 타입 (text/html, application/json 등)
    - Content-Length: 응답 데이터 길이
    - Cache-Control: 캐시 정책
    - Set-Cookie: 클라이언트에 쿠키 저장

Body (선택)

  • 요청 결과 데이터, HTML 문서, JSON, 이미지 등
  • 데이터 전송 필요가 없으면 비어 있음 (204 No Content)

2. 상태 코드(Status Code) 종류

  • 1xx (Informational) — 정보 제공
  • 2xx (Success) — 성공
  • 3xx (Redirection) — 리다이렉션
  • 4xx (Client Error) — 클라이언트 오류
  • 5xx (Server Error) — 서버 오류

🎓느낀점

HTTP 통신은 단순히 요청과 응답으로 끝나는 게 아니라 그 안에 다양한 규칙과 문법이 체계적으로 구성되어있다는 것을 알게되었다.
디버깅 시 상태 코드를 보고 현재 상태를 좀 더 잘 파악 할 수 있을것같다.

profile
takeitEasy

0개의 댓글