HTTP의 이해

김정현·2023년 1월 11일

HTTP란?

  • 데이터를 주고 받는 양식을 정의한 통신 규약 중 하나가 HTTP이다.(통신 규약: Protocol)
  • 매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰이는 통신 규약이다.
  • 여기서 말하는 통신 규약이란, 컴퓨터끼리 데이터를 주고 받을때 정해둔 약속을 의미한다.
  • 현대에 존재하는 대부분의 웹 서버가 HTTP를 기반으로 데이터를 주고 받는다.
    또한 모든 브라우저는 HTTP 프로토콜을 기본으로 지원한다.
  • 의사 표현의 수단: 말 <-> 네트워크, 언어 <-> 통신규약

어떻게 HTTP로 데이터를 주고 받을까?

  • HTTP에서는 언제나 Request, Response라는 개념이 존재
  • 서버와 브라우저의 관계로 가볍게 말해보면 아래와 같이 동작
    1. 브라우저의 서버에서 자신이 원하는 페이지(URL 등의 정보)를 요구(Request)한다.
    2. 서버는 브라우저가 원하는 페이지가 있는지 확인하고, 있다면 해당 페이지에 대한 데이터를 싣어 반환()해준다. 없다면 없는 페이지에 대한 데이터를 반환한다.
    3. 브라우저는 서버에게 전달 받은 데이터를 기반으로 브라우저에 그려준다.

추가 데이터, 데이터 다른점

  • Headers 탭에서는 추가 데이터, Response 탭에서는 데이터
    • Method 설명
      • GET: 어떤 리소스를 얻을 때 사용
      • POST: 웹 서버에 데이터를 게시할 때 사용하는게 일반적
    • Header 설명( 추가 데이터. 메타 데이터)
      • 브라우저가 어떤 페이지를 원하는지
      • 요청 받은 페이지를 찾았는지
      • 성공적으로 찾았는지
    • Payload 설명( 데이터. 실질적인 데이터
      • 서버가 응답을 보낼 때에는 항상 Payload를 보낼 수 있다.
      • 클라이언트(브라우저)가 요청을 할 때에도 Payload를 보낼 수 있다. 그리고 GET method를 제외하고 모두 Payload를 보낼 수 있다는게 HTTP에서의 약속이다.

0개의 댓글