HTTP

HTTP 메시지

느리지만 꾸준하게 2022. 4. 7. 10:40

HTTP 요청 메시지와 응답 메시지의 구조가 서로 다르다

 

http 메시지 공식 스펙 https://tools.ietf.org/html/rfc7230#section-3

 

 

시작 라인

요청 메시지

  • start - line = request-line / status - line
  • request - line = method SP(공백) request-target SP HTTP-version CRLF(엔터)
  • HTTP 메서드 (GET: 조회)

 

  • 요청 대상 (/search?q=hello&hl=ko) / HTTP Version

 

 

시작 라인

요청 메시지 - HTTP 메서드

  • 종류 : GET, POST, PUT, DELETE...
  • 서버가 수행해야 할 동작 지정
  • GET: 리소스 조회
  • POST: 요청 내역 처리
GET /search?q=hello&hl=ko HTTP/1.1 
Host: www.google.com

 

  • absolute-path[?query](절대경로[?쿼리])
  • 절대경로 = " / "로 시작하는 경로
  • 참고: *, http://...?x=y 와 같이 다른 유형의 경로지정 방법도 있다.
GET /search?q=hello&hl=ko HTTP/1.1 
Host: www.google.com

 

요청 메시지 - HTTP 버전

  • HTTP Version

 

시작 라인

응답 메시지

  • start-line = request-line / status-line
  • status-line = HTTP-version SP(space) status-code SP reason-phrase CRLF
HTTP/1.1 200 OK
Content-Type: text/html;charset=UTF-8 Content-Length: 3423
<html> <body>...</body>
</html>
  • HTTP 버전
  • HTTP 상태 코드 : 요청 성공, 실패를 나타냄

 

  • 200 : 성공
  • 400 : 클라이언트 요청 오류
  • 500 : 서버 내부 오류
  • 사람이 이해할 수 있는 짧은 상태 코드 설명 글

 

 

HTTP 헤더

 

 

HTTP 메시지 바디

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard

 

모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의

실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런...

www.inflearn.com

 

'HTTP' 카테고리의 다른 글

HTTP 메서드 - GET, POST  (0) 2022.04.27
HTTP API  (0) 2022.04.27
비 연결성(connectionless)  (0) 2022.04.07
Stateful, Stateless  (0) 2022.04.07
HTTP 기본 & 클라이언트 서버 구조  (0) 2022.04.07