HTTP (HTTP란?, 상태코드, 요청 메서드)

sunny·2021년 11월 7일
0

HTTP

목록 보기
1/5

HTTP 란❓

Hyper Text Transfer Protocol (하이퍼텍스트 전송 규약) 으로 웹 상에서 주고받는 데이터 (주로 HTML) 전송에 대한 여러 규칙이다.

HTTP는 요청(Request)과 응답(Response)을 주고받는 매커니즘을 기본으로 하고 Stateless 형식의 프로토콜이다.

👉 즉, 서버가 클라이언트의 정보를 관리하지 않는다.
👉 또한, 연결 상태를 유지하지 않기 때문에 정보를 저장하기 위해 쿠키(Cookie)와 세션(Session)이 등장했다.


HTTP 통신 과정

기본적인 HTTP 통신 방법은 클라이언트의 요청과 서버의 응답으로 이루어진다. 일반적으로 클라이언트는 웹 브라우저이다.
하지만 위의 이미지처럼 중간에 프록시 서버가 존재하는 경우, 프록시 서버는 서버이면서 클라이언트의 역할도 수행한다.
서버는 클라이언트의 요청을 받아 해당되는 HTML 파일 + 기타 리소스(CSS, JS 등등)를 클라이언트에게 전달한다.
이러한 역할을 하는 서버를 웹 서버 라고 부른다.

  • 프록시 서버
    Proxy는 “대리” 라는 뜻을 갖고 있다. 이름 그대로 프록시 서버는 웹 서버의 무언가를 대신하는 역할을 한다. 데이터를 주고받는 일이 매우 빈번한 인터넷 세계에서 웹 서버가 모든 작업을 처리한다면 당연히 부하가 심할 것이다. 따라서 프록시 서버는 웹 서버의 짐을 덜어주는 작업을 주로 맡는다.
    ex) 캐싱, 로드 밸런싱, 인증, 로깅, 필터링 등등..

❗참조 및 출처❗
HTTP 개념 정리


HTTP 상태코드

  • 1XX : Information responses
    상태 코드가 '1'로 시작하는 경우는 서버가 요청을 받았으며, 서버에 연결된 클라이언트는 작업을 계속 진행하라는 의미

  • 2XX : Successful responses
    요청을 성공적으로 받았으며 인식했고 수용하였음을 알려준다.

  • 3XX : Redirection messages
    요청 완료를 위해 추가 작업 조치가 필요하다.

  • 4XX : Client error responses
    요청의 문법이 잘못되었거나 요청을 처리할 수 없다.

  • 5XX : Server error reponses
    서버가 명백히 유효한 요청에 대한 충족을 실패했다.

HTTP 상태 코드 정리


HTTP 요청 메서드

HTTP는 요청 메서드를 정의하여, 주어진 리소스에 수행하길 원하는 행동을 나타내다.
👉 클라이언트가 웹 서버에게 사용자 요청의 목적/종류를 알리는 수단

GET
GET 메서드는 특정 리소스의 표시를 요청한다. GET을 사용하는 요청은 오직 데이터를 받기만 한다.

HEAD
HEAD 메서드는 GET 메서드의 요청과 동일한 응답을 요구하지만, 응답 본문을 포함하지 않습니다.

POST
POST 메서드는 특정 리소스에 엔티티를 제출할 때 쓰인다. 이는 종종 서버의 상태의 변화나 부작용을 일으킨다.

PUT
PUT 메서드는 목적 리소스 모든 현재 표시를 요청 payload로 바꾼다.

DELETE
DELETE 메서드는 특정 리소스를 삭제한다.

CONNECT
CONNECT 메서드는 목적 리소스로 식별되는 서버로의 터널을 맺는다.

OPTIONS
OPTIONS 메서드는 목적 리소스의 통신을 설정하는 데 쓰인다.

TRACE (en-US)
TRACE 메서드는 목적 리소스의 경로를 따라 메시지 loop-back 테스트를 한다.

PATCH
PATCH 메서드는 리소스의 부분만을 수정하는 데 쓰인다.

0개의 댓글