웹 공부하기/HTTP
[인프런] 모든 개발자를 위한 HTTP 웹 기본 지식 (HTTP 메세지)
inthess
2021. 9. 17. 09:37
HTTP 메세지에 대해 알아보자.
HTTP 메세지
HTTP 메세지는 요청 메세지와 응답 메시지로 나뉜다.
- HTTP 메시지 구조는 다음과 같으며, 요청 메세지와 응답 메세지의 차이는 시작 라인이다. 그리고 공백 라인은 꼭!!! 필수로 빠지면 안된다. body 부분은 선택사항이다.
- HTTP 요청 메세지의 시작 라인
start-line 중 request-line 으로, method (공백) request-target (공백) HTTP-version (엔터) 로 구성된다.
- method: 서버가 수행해야 할 동작을 지정하는 HTTP 메서드가 들어간다. 이건 다음 챕터에서 더 자세히 다룰 예정이다.
- request-target: 요청 대상을 적는 곳이다. 절대 경로 '/'로 시작하는 경로와 '?'로 시작하는 쿼리를 적어주면 된다.
- HTTP-version: HTTP 버전을 작성한다.
- HTTP 응답 메세지의 시작 라인
start-line 중 status-line 으로, HTTP-version (공백) status-code (공백) reason-phrase (엔터) 로 구성된다.
- HTTP-version: HTTP 버전을 작성한다.
- status-code: HTTP 상태 코드를 작성한다. 요청 성공인지 실패인지 등을 숫자로 나타낸다. 이것도 뒤에서 자세히 다룰 예정이다.
- reason-phrase: 숫자만 보고 상태를 파악하기 어려울 수도 있어서 사람이 이해할 수 있는 짧은 상태 코드를 설명하는 문구를 나타낸다.
- HTTP 헤더
HTTP 전송에 필요한 모든 부가정보를 담는다. 표준 헤더로 메세지 바디 내용, 메세지 바디 크기, 요청 클라이언트 정보 등 너무 많아서 외울 필요는 없다..!
- HTTP 메세지 바디
실제 전송할 데이터를 담는다. HTML 문서, 이미지, 영상 등 바이트로 표현할 수 있는 모든 데이터 전송이 가능하다.