728x90
https://www.edwith.org/boostcourse-web/lecture/16661
HTTP (Hypertext Transfer Protocol)란?
- HTTP는 서버와 클라이언트가 인터넷상에서 데이터를 주고받기 위한 프로토콜(protocol) 이다.
HTTP 작동방식
- HTTP는 서버/클라이언트 모델을 따름.
- 장점
- 불특정 다수를 대상으로 하는 서비스에는 적합하다.(윈도우 공유 파일 - 10명까지)
- 클라이언트와 서버가 계속 연결된 형태가 아니기 때문에 클라이언트와 서버 간의 최대 연결 수보다 훨씬 많은 요청과 응답을 처리할 수 있다. - 단점
- 연결을 끊어버리기 때문에, 클라이언트의 이전 상황을 알 수가 없다.
- 이러한 특징을 무상태(Stateless)라고 말한다.
- 이러한 특징 때문에 정보를 유지하기 위해서 Cookie와 같은 기술이 등장하게 되었다.(ex. 쇼핑몰에서 쇼핑하다가, 어떤 상품을 샀는지를 기억하기 위해서!)
웹이 동작하는 부분
1. 클라이언트가 먼저 원하는 서버에 접속해야한다.
2. 클라이언트가 서버한테 요청을 해야 한다.(서버가 무작정 주는게 아니고, 클라이언트가 요청에 따른 응답 결과를 받는 구조이다.
3. 응답이 끝나면 서버와 클라이언트의 연결은 끊기는 구조이다.
좀더 자세히 살펴보면
2 의 요청은 포맷이 있다. 요청 메세지는 헤더부분, 빈줄 부분, 바디부분 세 부분으로 나뉘게 된다.
- 요청 헤더부분을 보면 첫 줄은 헤더부분의 필수 등장요소.
- 첫번째 GET 이 요청 메소드이다.
- 그 다음 나오는 것이 요청 URI
- 마지막이 프로토콜의 버전을 명시하는 부분이다.
- 실제 GET이라는 방식은 자원의 방식이라든지 그런 부분들도 URI에 붙이므로, 요청 바디가 없다.
- -바디요소는 요청 메소드가 post나 put을 사용하게 됐을 때 들어오게 된다.
응답 데이터 포맷도 역시 헤더부분, 빈줄 부분, 바디부분 3개로 나뉘어져 있다.
-
첫 줄에는 반드시 응답 HTTP 프로토콜의 버전,
-
그 다음은 응답 코드 그리고 응답 메시지 등으로 나올 수 있다.
- 그리고 나머지 헤더 부분에는 날짜, 웹 서버 이름과 버전, 콘텐츠 타입, 캐시 제어 방식, 콘텐츠 길이 등의 값이 나오게 됨.
'부스트코스' 카테고리의 다른 글
[부스트코스] 브라우저의 동작 - 렌더링과 렌더링 엔진 (0) | 2020.02.01 |
---|---|
부스트 코스 서포터즈 BOOSTER 합격! (0) | 2020.01.15 |