TIL : 210624_목_(HTTP Messages)

beablessing·2021년 6월 24일
0

TIL

목록 보기
17/33
post-thumbnail

HTTP Messages

  • HTTP는 HTML과 같은 문서를 전송하기 위한 어플리케이션 레이어 프로토콜.
  • 전동적인 클라이언트-서버 모델에서 ct가 양식에 맞춰 요청을 보내면 서버도 양식에 맞춰 응답.
  • 무상태성!! 특정항태를 유지하지 않는 특징을 가진다.
  • Requests    /   Responses


구성파일, API, 기타 인터세이스에서 HTTP메세지를 자동으로 완성한다.

http messgaes 기본 구성

  • start line(status line) : 요청이나 응답의 상태를 나타내며, 항상 첫줄에 위치
  • http headers : 요청을 지정하거나, 메세지에 포함된 본문을 설명하는 헤더의 집합.
  • empty line : 헤더와 본문을 구분하는 빈줄
  • body: 요청과 관련된 데이터나, 응답과 관련된 데이터 또는 문서를 포함 . (선택적 사용)
    ** start_line & http headers 를 묶어 head라고 부르고,
    payload를 body라고 부른다.



Request(요청)

start line
1. 수행할작업을 나타냄(GET,POST 등)
2. 요청대상또는 절대경로는 요청란에 작성됨 (origin/absoulute/asteisk형식)

  • origin 형식
`?`와 쿼리문자열이 붙는 절대경로 
예시) 
POST/HTTP 1.1
GET/background.pn HTTP/1.0
HEAD/test.html?query=alibaba HTTP/1.1
OPTIONS/anypage.html HTTP/1.0
  1. HTTP버전은 메세지의 다른 구조를 결정한다. 이를 위해 HTTP 버전을 함께 입력.

Headers

  • general headers: 메세지 전체에 적용
  • request headers: 요청을 보다 구체화 한다.
  • entity headers : 바디에 적용됨. 바디가 비어있는경우 전송되지 않는다.

BODY

  • POST, PUT과 같은 일부 데이터를 업데이트 하기 위해 사용한다.



Response(응답)

status line
1. 현재 프로토콜의 버전(HTTP/1.1)
2. 상태 코드 - 요청의 결과를 나타냄(200,302,404등)
3. 상태 텍스트 - 상태 코드에 대한 설명
예시)  HTTP/1.1 404 Not Found.

profile
프론트엔드 개발자

0개의 댓글