HTTP

웹에서 클라이언트와 서버가 데이터를 주고받기 위한 프로토콜입니다. 브라우저가 서버에 요청하고 응답을 받는 규칙이라고 보면 됩니다.

핵심 특징

요청과 응답 구조

[요청]
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Chrome/91.0

[응답]
HTTP/1.1 200 OK
Content-Type: text/html

<html>...</html>

HTTP 메서드

메서드용도특징
GET데이터 조회바디 없음, 캐싱 가능
POST데이터 생성바디에 데이터 담음
PUT전체 수정리소스 대체
PATCH부분 수정일부만 변경
DELETE삭제리소스 제거

상태 코드

코드의미예시
2xx성공200 OK, 201 Created
3xx리다이렉션301 영구 이동, 304 캐시 사용
4xx클라이언트 에러400 잘못된 요청, 404 없음
5xx서버 에러500 서버 오류, 503 서비스 불가

HTTP 버전 변화

버전특징
HTTP/1.0요청마다 연결 새로 맺음
HTTP 1.1Keep-Alive로 연결 재사용
HTTP 2멀티플렉싱, 헤더 압축
HTTP/3UDP 기반(QUIC), 더 빠른 연결

HTTP vs HTTPS

무상태의 한계와 해결

로그인 상태 유지가 안 됨 → 쿠키, 세션, JWT로 해결

→ HTTP 1.1과 HTTP 2.0에 대해서 설명해주세요

CSLOG에서 보기