ian의 개발일기장

21. HTTP 본문

Front-End/Node.js

21. HTTP

ian90 2018. 10. 23. 13:32

1. HTTP란?

HTTP(Hyper Text Transfer Protocol)는 웹에서 HTML 문서와 같은 리소스들을 주고 받을 수 있는 프로토콜입니다. 웹의 창시자 팀 버너스리(Tim Berners-Lee)와 그가 속한 팀은 CERN에서 HTTP를 발명 했습니다.



2. 작동방식

HTTP는 Server/Client 모델이며, 개별적인 메시지교환을 통해 통신을 합니다. 클라이언트가 요청을 보내면, 서버가 응답을 돌려준다.클라이언트에 의해 전송되는 메세지를 Request(요청)라고 부르며, 그에 대해 서버에서 응답으로 전송되는 메세지를 Response(응답)라고 부른다.


크롬에서 개발자도구를 키고 Network탭으로 간 다음, 위에 주소로 접속을 해보자.

HTTP Header에 메세지를 담아 클라이언트가 요청 메세지를 보내면, 서버가 응답 메세지를 보내주는 것을 확인 할 수 있다. HTTP는 connectionless 한 프로토콜이다. 클라이언트가 서버에 요청을 하고, 서버가 클라이언트에게 응답을 보내면 연결을 끊는다. 자원 하나에 대해서 하나의 연결만 만든다. 연결을 끊어 버리기 때문에, 클라이언트의 이전 상태를 알 수 없다. 이러한 특성을 stateless라고 한다. 이것을 위한 해결 방안은 Cookie다.


출처 - 생활코딩, 위키, MDN공식문서