HTTP

RA_MI·2022년 2월 24일
0

Internet

목록 보기
2/5
post-thumbnail

What is HTTP? 😶

  • 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜입니다.
  • HTTP는 메시지 구성 및 전송 방식과 다양한 명령에 대한 웹 서버와 브라우저의 응답 방식을 규정합니다.
  • 이렇게 규약을 정해두었기 때문에 모든 프로그램이 이 규약에 맞춰서 개발하여 서로 정보를 교환합니다.
  • HTTP는 Stateless 프로토콜입니다. 각 명령이 이전의 명령과 무관하게 독입적으로 실행되고, 이때문에 자바, 자바스크립트, 쿠키 등이 등장했습니다.

HTTP/1.1 VS HTTP/2 😐

HTTP/1.1은 기본적으로 하나의 커넥션당 한번의 요청과 한번의 응답만 처리할 수 있습니다. 따라서 HTML 문서 내에 포함된 여러 리소스 요청이 개별적으로 전송되고 응답도 개별적으로 전송되고, 이처럼 HTTP/1.1은 리소스의 동시전송이 불가능한 구조를 가지고 있어 요청할 리소스가 많아지면 응답 시간도 늘어난다는 단점이 있습니다.

HTTP/2는 다중 요청/응답이 불가능하다는 단점이 있는 HTTP/1.1 단점을 보완했습니다. 즉, 커넥션당 여러개의 요청과 응답이 가능합니당. 따라서 여러개의 리소스를 동시 전송이 가능하므로 HTTP/1.1에 비해 페이지 로드 속도가 50%정도 빠릅니다.

HTTP 동작 🙂

클라이언트 즉, 사용자가 브라우저를 통해서 어떠한 서비스를 url을 통하거나 다른 것을 통해서 요청(request)을 하면 서버에서는 해당 요청사항에 맞는 결과를 찾아서 사용자에게 응답(response)하는 형태로 동작한다.

  • 요청 : client -> server
  • 응답 : server -> client

HTTP 특징 😀

  • HTTP 메시지는 HTTP 서버와 HTTP 클라이언트에 의해 해석이 된다.
  • HTTP는 연결을 유지하지 않는 프로토콜이기 때문에 요청/응답 방식으로 동작한다.
  • TCP/ IP를 이용하는 응용 프로토콜이다.
    (컴퓨터와 컴퓨터간에 데이터를 전송 할 수 있도록 하는 장치로 인터넷이라는 거대한 통신망을 통해 원하는 데이터를 주고 받는 기능을 이용하는 응용 프로토콜)
  • HTTP는 연결 상태를 유지하지 않는 비연결성 프로토콜이다.
    (이러한 단점을 해결하기 위해 Cookie와 Session이 등장하였다.)

Request 😉

클라이언트가 서버에게 연락하는 것을 요청이라고 하며 요청을 보낼때는 요청에 대한 정보를 담아 서버로 보낸다. 서버가 주문서를 받아 클라이언트가 어떤 것을 원하는지 파악할 수 있게 한다.

Request Method (요청의 종류)

GET : 자료를 요청할 때 사용
POST : 자료의 생성을 요청할 때 사용
PUT : 자료의 수정을 요청할 때 사용
DELETE : 자료의 삭제를 요청할 때 사용

HTTP 상태 코드 정리

0개의 댓글