KIM COMPUTER


HTTP (Hypertext Transfer Protocol) 기초

HTTP는 웹 서버와 웹 클라이언트(주로 웹 브라우저) 사이에 데이터를 주고받기 위해 사용되는 통신 규약(Protocol)입니다. HTML 문서, 이미지, 동영상, JSON 데이터 등 웹에서 전송되는 모든 데이터의 기반이 됩니다.


1. HTTP의 핵심 원리: 요청과 응답

HTTP 통신은 기본적으로 클라이언트-서버 모델을 따르며, 요청(Request)응답(Response) 쌍으로 이루어집니다.

  1. 클라이언트 요청: 브라우저(클라이언트)가 서버에게 특정 자원(웹 페이지, 파일 등)을 달라고 요청합니다. 요청 시 메서드 (GET, POST 등)URL을 사용합니다.
  2. 서버 응답: 서버는 요청을 처리한 후, 요청한 자원과 함께 요청 처리 결과를 나타내는 상태 코드(Status Code)를 클라이언트에게 보냅니다.

2. HTTP의 특징


3. 대표적인 HTTP 상태 코드

서버가 클라이언트에게 보내는 3자리 숫자로, 요청의 결과를 나타냅니다.

분류 코드 범위 의미 대표 코드 설명
1xx Informational 요청을 받았으며 작업을 계속함 100 Continue
2xx Success 요청을 성공적으로 처리함 200 OK (성공)
3xx Redirection 요청 완료를 위해 추가 작업이 필요함 301 Moved Permanently
4xx Client Error 클라이언트 측의 요청이 잘못됨 404 Not Found
5xx Server Error 서버가 요청을 처리하지 못함 500 Internal Server Error

자주 사용되는 코드

코드 설명 의미
200 OK 요청이 성공적으로 처리되었으며 응답 본문이 전송됨. 가장 일반적인 성공 응답
201 Created 요청이 성공적으로 처리되었으며 새로운 자원이 생성됨. (주로 POST 요청의 결과) API 생성 성공
400 Bad Request 클라이언트의 문법 오류 등으로 서버가 요청을 이해할 수 없음. 요청 데이터 문제
401 Unauthorized 클라이언트가 인증되지 않았거나 유효한 인증 자격 증명이 없음. 로그인 필요
403 Forbidden 클라이언트는 인증되었으나 자원에 접근할 권한이 없음. 권한 부족
404 Not Found 요청한 자원(URL)을 서버에서 찾을 수 없음. 가장 흔한 에러
503 Service Unavailable 서버가 일시적인 과부하 또는 점검으로 요청을 처리할 수 없음. 서버 일시 중단