HTTP란?
HTTP(HyperText Transfer Protocol) 는
데이터를 주고받는 양식을 정의한 통신 규약 중 하나이다.
통신 규약이란?
- 컴퓨터와 컴퓨터가 데이터를 주고받을 때
- 미리 정해둔 약속(규칙)
즉, HTTP는
"웹에서 데이터를 어떻게 요청하고, 어떻게 응답할지"를 정해둔 약속
이라고 이해하면 된다.
브라우저와 서버의 HTTP 통신 흐름

- 브라우저는 서버에
- 특정 페이지
- 혹은 데이터
를 요청한다
- 서버는
- 요청한 페이지나 데이터가 존재하는지 확인
- 존재한다면 해당 데이터를 HTTP Response에 담아 전송
- 브라우저는
- 서버로부터 전달받은 데이터를 기반으로
- 화면에 웹 페이지를 그려준다
개발자 도구(Network 탭)
브라우저에서 실제 HTTP 통신을 확인할 수 있다.
Network 탭 여는 방법
- Command + Option + I (Mac)
- 개발자 도구 열기 → Network 탭
- 새로고침
그러면:
- 수많은 HTTP 요청(Request)과 응답(Response)이 오가는 것을 확인할 수 있다.
이를 통해 요청이 정상적으로 들어오는지, 응답이 올바른지를 직접 확인할 수 있다.
Headers 탭
Headers 탭에서는
브라우저가 서버에 보낸 요청(Request) 정보를 확인할 수 있다.
확인 가능한 주요 정보:
- Request Method (GET, POST 등)
- Status Code
- 요청 URL
- 요청/응답 헤더 정보
HTTP Status Code
200번대
- 요청 성공
- 서버가 요청을 정상적으로 처리함
300번대
- 클라이언트가 추가적인 조치 필요
- 주로 페이지 이동(Redirection)
400번대
- 클라이언트 오류
- 잘못된 요청
- 인증/권한 오류
- 요청한 데이터를 서버에서 찾을 수 없음
500번대
- 서버 오류
- 서버 내부 로직 문제
- 서버 과부하
400번대는 요청 문제, 500번대는 서버 문제라고 구분하면 쉽다.
Response 탭
Response 탭에서는
서버가 브라우저로 반환한 데이터를 확인할 수 있다.
이 데이터는:
- 웹 페이지를 그리기 위한 HTML
- 또는 JSON 형태의 데이터
등이 될 수 있다.
Header와 Payload의 차이
HTTP 메시지는 크게 두 부분으로 나뉜다.
Header (메타 데이터)
- 실제 데이터에 대한 설명 정보
- 예:
- 브라우저가 어떤 페이지를 원하는지
- 서버가 요청을 성공적으로 처리했는지
- 어떤 형식(Content-Type)으로 데이터를 보낼지
"데이터에 대한 데이터"라고 볼 수 있다.
Payload (실제 데이터)
- 실제 전달되는 데이터
- HTTP Body와 같은 의미
예:
- 회원가입 정보
- 로그인 정보
- JSON 데이터
HTTP Method와 Payload
- GET
- 구조적으로 HTTP Body가 존재하지 않음
- Payload를 보낼 수 없음
- POST / PUT / DELETE 등
- HTTP Body 존재
- Payload 전송 가능
데이터를 서버로 전달해야 하는 경우에는
GET이 아닌 Method를 사용한다.
정리
- HTTP는 웹에서 데이터를 주고받기 위한 통신 규약이다
- 브라우저와 서버는 HTTP Request / Response로 통신한다
- 개발자 도구(Network 탭)를 통해 실제 통신을 확인할 수 있다
- Header는 메타 데이터, Payload는 실제 데이터다
- Status Code를 통해 요청 성공/실패 원인을 파악할 수 있다
'BackEnd > 내일배움캠프' 카테고리의 다른 글
| 6. MVC 디자인 패턴이란? (0) | 2026.02.09 |
|---|---|
| 5. Lombok이란? (0) | 2026.02.09 |
| 4. 테스트코드 (0) | 2026.02.09 |
| 2. 서버란 무엇일까? (0) | 2026.02.09 |
| 1. 그레이들(Gradle)이란 무엇일까? (0) | 2026.02.09 |