응용 계층에는 웹 페이지에 접속하기 위한 프로토콜이 있습니다.
바로 HTTP입니다.
웹 페이지를 접속하는 구조와 과정을 먼저 설명 드리겠습니다.
웹브라우저를 통해 사용자가 보고 싶은 특정 URL을 요청하면 웹 서버에서 그에 상응하는 HTML문서를 응답합니다.
HTTP를 통해 웹 사이트를 구성하는 HTML파일을 전송하며 HTTP파일 전송은 HTTP요청과 응답을 주고 받으며 이루어집니다.
기본적으로 HTTP는 TCP 80번 포트를 이용하여 요청과 응답메시지를 교환합니다.
잠시 데이터 전송 간에 필요한 URL에 대해서 살펴보겠습니다.
https://www.inflearn.com/roadmaps
https는 보안 프로토콜로 해당 파트는 브라우저가 어떤 프로토콜을 사용하는지 나타내는 부분입니다.
www.inflearn.com는 호스트 이름입니다. 이 호스트 이름은 어떤 웹 서버를 필요로 하는지를 나타냅니다.
roadmaps는 호스트 이름 뒤에 오는 경로명입니다.
HTTP 리퀘스트
HTTP 리퀘스트는 리퀘스트 라인, 메시지 헤더, 엔티티 바디 등의 부분으로 나뉩니다.
HTTP 리퀘스트를 자세히 보면
리퀘스트 라인은 메소드, 공백, URI, HTTP버전으로 표기 됩니다.
리퀘스트 라인은 메소드는 서버에 대한 요청을 나타내며
주요 HTTP 메서드는 GET, POST, PUT, DELETE, HEAD입니다.
HTTP 리스펀스
HTTP 리스펀스는 리스펀스 라인, 메시지 헤더, 엔티티 바디 등의 부분으로 나눕니다.
맨위 HTTP/1.1 200 OK이라고 표기된 부분이 리스펀스 라인이 됩니다.
그 아래는 메시지 헤더입니다.
리스펀스 라인은 버전, 상태 코드, 설명문으로 표기 됩니다.