HTTP

동글래차·2023년 5월 27일
0

web

목록 보기
1/6
post-custom-banner

1. HTTP란?

  • 웹페이지를 주고 받기 위해 주로 사용되는 protocol
  • text 기반의 protocol이며 Request(요청) -> Response(응답) 구조
  • TCP기반이지만 상태를 저장하지(stateless) 않음

2. HTTP packet 구조

  • Header: Device끼리 통신할 때 사용하는 주요 옵션 포함
  • Body: 통신의 내용 포함
  • 가변적인 size를 가짐
  • Header는 반드시 존재하지만, Body는 없을 수도 있음
\r\n => Header의 끝
\r\n\r\n => Header와 Body 사이를 나눔
ex) Header1\r\n Header2\r\n\r\n Body

3. HTTP 요청 주요 Header

  • Request Line: Http method(GET,POST , 등), 요청하는 URI 경로, HTTP protocol version
  • Host: 요청하는 목적지 이름 또는 목적지 IP 주소
  • User-Agent: 클라이언트 측에서 사용하는 브라우저나 앱의 정보
    이 정보로 클라이언트의 브라우저의 호환성 체크 가능
  • Accept: 클라이언트가 해석할 수 있고 받길 원하는 리소스의 MIME타입 정보
  • Accept-Language: 클라이언트가 이해할 수 있고 선호하는 언어 정보
    => ex) 영어 / 한국어 / 일본어
  • Accept-Encoding: 클라이언트가 원하는 리소스의 압축 방식 정보
  • Referer: 현제 요청한 페이지 또는 리소스를 요청하기 전에 있던 페이지 또는 사용한 리소스의 정보
  • Cookie: 클라이언트 측에서 저장하고 있는 쿠키 정보
  • Content-Type: 요청 Body의 MIME 타입 정보
  • Content-Length: 요청 Body의 길이 정보

4. HTTP 응답 주요 Header

  • Status Line: Htttp protocol version, code , 상태 메세지
  • Server: 웹 서버의 소프트웨어 및 버전 정보
  • Date: 시간 정보
  • Content-Type: 응답 Body의 MiME 타입 정보
  • Content-Length: 응답 Body의 길이 정보
  • Content-Encoding: 응답 Body의 인코딩 방식 정보
  • Cache-Control: 캐시 제어하는 방법에 대한 정보
  • expires: 캐시가 언제 만료되는지를 나타내는 정보
  • Set-Cookie: 서버 측에서 클라이언트에게 전송할 쿠키 정보
  • Last-Modified: 응답 리소스의 마지막 수정 시간 정보

profile
동글동글
post-custom-banner

0개의 댓글