TIL | HTTP란

Jinsung·2021년 8월 15일
0

네트워크

목록 보기
1/1
post-thumbnail

🔎 HTTP(HyperText Transfer Protocol)란

HPPT는 텍스트 기반의 통신 규약으로 인터넷에서 주고받을 수 있는 프로토콜이다.
Tip. protocol : 프로토콜은 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙


💻 HTTP 동작방식

클라이언트(Client) - 서버에서 요청을 보내는 리소스 사용자 ex) 웹 브라우저, 모바일 애플리케이션, IoT등
서버(Server) - 클라이언트에게 요청에 대한 응답을 제공하는 리소스 관리자

클라이언트(사용자)가 브라우저를 통하여 어떠한 서비스를 url을 통해 요청(request)을 하면 서버에서 해당 요청사항에 맞는 결과를 사용자에게 응답(response)하는 형태입니다.


📄 HTTP 요청 Method

HTTP 요청 Method란 클라이언트가 웹 서버에 사용자 요청의 목적/종류를 알리는 수단입니다.
과거 최초의 HTTP에는 GET 메소드만 존재하였고, 서버의 응답은 무조건 HTML문서였습니다.

  • GET - 정보를 조회하기 위해 URL(URI) 형식으로 웹서버 리소스(데이터)를 요청합니다.
  • HEAD - 특정 리소스를 GET메서드로 요청했을 때 돌아올 헤더를 요청합니다.
  • POST - 리소스를 생성하거나 컨트롤러를 샐행하는데 사용합니다.
  • PUT - 리소스를 업데이트(수정)하는데 사용되며 항상 리소스 식별 정보를 포함해야 합니다.
    (자원의 전체교체, 자원교체 시 모든 필드가 필요)
  • PATCH - 리소스를 업데이트(수정)하는데 사용되며 항상 리소스 식별 정보를 포함해야 합니다.
    (자원의 부분교체, 자원교체시 일부 필드가 필요)
  • DELETE - 특정 리소스를 제거하는데 사용합니다.
  • OPTIONS - 목표 리소스와의 통신 옵션을 설명하기 위해 사용됩니다.(특정 엔드포인트가 어떤 메소드를 허용하는지 알고자 할때 사용)
  • TRACE - 메시지가 프락시를 거쳐 서버에 도달하는 과정을 추적합니다.

📄 HTTP 메시지

HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식입니다. 메세지 타입은 요청(request), 응답(response) 두가지가 있습니다.

✏ 요청(request) - 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔 하는 메시지

  • Method - 클라이언트가 수행하고자 하는동작(GET,POST,PUT,DELETE 등)을 지칭합니다.
  • Path - 가져오려는 리소스의 경로를 말합니다.
  • Version of the Protocol - HTTP 포로토콜의 버전을 말합니다.
  • Headers - 서버에 대한 추가 정보를 전달합니다.

✏ 응답(response) - 요청에 대한 서버의 답변

  • Version of the protocal - HTTP 포로토콜의 버전을 말합니다.
  • Status Code - 요청에 대한 성공 여부 및 결과에대한 상태를 나타내는 코드입니다.
  • Status Message - 상태 코드에 대한 설명을 나타내는 상태 메시지 입니다.
  • Headers - 서버에 대한 추가 정보를 전달합니다.

📚응답에 대한 상태코드(Status Code) 분류

전체 범위정의된 범위분류
100~199100-101정보
200~299200~206성공
300~399300~305리다이렉션
400~499400~415클라이언트 에러
500~599500~505서버 에러

🙏마무리

웹개발을 위해서 필수적으로 알고있어야 하는 HTTP에 대하여 정리해 보았습니다. 즉 HTTP는
클라이언트와 서버 간 통신을 위한 프로토콜 로 이해하면 되겠습니다.

0개의 댓글