728x90
HTTP는 HyperText Transfer Protocol(하이퍼텍스트 전송 프로토콜)의 약자로, 클라이언트와 서버 간 데이터를 주고받는 프로토콜입니다. HTTP는 클라이언트-서버 모델을 사용하며, 클라이언트가 서버에 요청을 보내고, 서버는 요청에 대한 응답을 반환하는 방식으로 동작합니다.
HTTP는 기본적으로 TCP/IP 프로토콜을 사용하며, TCP/IP 프로토콜을 사용하는 컴퓨터들은 인터넷으로 연결되어 있습니다. HTTP는 보통 웹 브라우저와 웹 서버 간에 사용되며, 클라이언트는 웹 브라우저를 통해 HTTP 요청을 보내고, 서버는 요청을 처리한 후 응답을 반환합니다.
HTTP는 stateless(상태를 유지하지 않는) 프로토콜로, 클라이언트와 서버 간의 상호작용이 한번 끝나면 연결이 끊어지고, 다음 요청이 오면 새로운 연결이 이루어집니다. 따라서 HTTP는 각각의 요청과 응답이 서로 독립적이며, 이전 요청이나 응답에 대한 정보를 저장하지 않습니다.
HTTP 요청은 다음과 같은 요소로 구성됩니다.
- HTTP 메소드: 요청 메소드로, GET, POST, PUT, DELETE 등이 있습니다.
- URL: 요청 대상의 URL입니다.
- HTTP 버전: 요청에 사용되는 HTTP 버전입니다.
- 헤더: 요청에 대한 부가 정보로, 클라이언트와 서버 간에 전달됩니다.
- 본문: POST, PUT 메소드와 같이 요청 본문이 있을 경우 해당 내용이 전달됩니다.
HTTP 응답은 다음과 같은 요소로 구성됩니다.
- HTTP 버전: 응답에 사용된 HTTP 버전입니다.
- 상태 코드: 요청 처리 결과를 나타내는 세 자리 숫자 코드입니다.
- 상태 메시지: 상태 코드에 대한 상세 설명입니다.
- 헤더: 응답에 대한 부가 정보로, 클라이언트와 서버 간에 전달됩니다.
- 본문: 서버가 전송하는 데이터의 본문입니다.
728x90
'기타' 카테고리의 다른 글
Generative AI란? (0) | 2023.02.25 |
---|---|
ChatGPT (0) | 2023.02.25 |
Request, Response (0) | 2023.02.23 |
로드 밸런서 (L4, L7) (0) | 2023.02.23 |
MSA 구조에서 하나의 트랜잭션의 단위는 어떻게 봐야할까? (0) | 2023.02.23 |