HTTP 기본

HTTP 기본

개발자R 2022. 1. 9. 15:29
반응형

HTTP : Hyper Text Transfer Protocol

* 모든것을 http로 전송한다. JSON...TEXT...이미지... HTML...등등 모든것!

 

HTTP 특징

1. 클라이언트 - 서버 구조

 

2. Stateless

: 서버가 클라이언트의 상태를 보존하지 않는다.

따라서 중간에 서버가 어떻게 바뀌거나 추가해도 동일한 응답을 줄 수 있다.

상태가 보존된다면, 중간에 다른 서버로 요청하면 장애가 나는 것...

스케일아웃에 유리함.

but... 

상태를 유지해야하는 경우가 생긴다. ex) 로그인

 

3. 비연결성

: 서버 자원을 효율적으로 사용할 수 있음

요청하고 응답하면 연결이 끝!

but...

연결을 새로 맺어야 함.

css, js, 이미지 등 많은 자원을 계속 다운로드 해야함

그래서 HTTP지속연결을 함

 

HTTP 메시지

1) 시작 라인 (request-line / status-line)

 - request-line = method request-target(path와 query) HTTP버전 [엔터]

 - status-line = HTTP버전 status-code reason-phrase [엔터]

 예) HTTP/1.1 200 OK

 

2) HTTP 헤더

 - header-field = field-name: ~~~value~~~~

용도 : HTTP 전송에 필요한 부가정보들이 들어있음.

예) 메시지 바디의 내용, 크기, 압축 여부, 인증, 요창 브라우저 정보, 캐시 정보 등등

 

3) HTTP 메시지 바디

: 실제 전송할 데이터. text, JSON, 이미지, 영상, HTML 등등 모든것

 

 

출처 : <모든 개발자를 위한 HTTP 웹 기본 지식> 강의 by. 김영한

반응형

'HTTP 기본' 카테고리의 다른 글

HTTP API 설계 예시  (0) 2022.01.09
HTTP 메서드  (0) 2022.01.09
URI와 URL, URN  (0) 2022.01.09
인터넷 네트워크 기초  (0) 2022.01.09