HTTP

yeji kang·2020년 8월 5일

HTTP?

  • HyperText Trancfer Protocol
  • HTML 문서를 교환하기 위해 만들어진 protocol(통신 규약)입니다.
  • TCP/IP 기반으로 되어있습니다.

⭐️ HTTP 통신 방식

  • 기본적으로 요청/응답 (request/response) 구조로 되어있습니다.
  • HTTP는 상태를 저장하지 않습니다.(Stateless)
    • 요청이 오면 응답을 하는 구조로 여러 요청/응답 끼리 연결되어 있지 않습니다.
    • 각각의 요청/응답은 독립적입니다.
    • 여러 요청/응답의 진행과정이나 데이터가 필요할 때는 쿠키나 세션 등을 사용합니다.

⭐️ 메시지 방식

  • 요청(requests)
  • 응답(response)

Request 구조

1. Start Line

  • HTTP Method
    • GET, POST , PUT,DELETE,OPTIONS 이 있습니다.
  • Path
    • 가져오려는 리소스의 경로
    • 해당 request가 전송되는 목표 URL.
  • Version of protocol
    • HTTP 프로토콜의 버전

2. Headers

  • 서버에 대한 추가 정보를 전달하는 선택적 헤더들
  • Key : value 값으로 되어있습니다.
    - Accept - Language : Key
    - fr : value

3. Body

  • 해당 request의 실제 메세지/내용
  • Body가 없는 request도 많다.

response 구조

1. Status Line

Response 의 상태를 간략하게 나타내주는 부분입니다.

  • HTTP 버전
  • Status code
    - 응답 상태를 나타내는 코드로 숫자로 표현됩니다.
  • Status message
    • 상태 코드의 짧은 설명을 나타내는 상태 메시지입니다.

2. Headers

  • 요청 헤더와 비슷합니다.
  • response에서만 사용되는 header값들이 있습니다.
    ex) User-Agent -> Server

3. Body

  • 선택 사항입니다. 즉 모든 response에 body가 있지는 않다는 뜻입니다.
  • 가져온 리소스가 포함되어 있습니다.

0개의 댓글