HTTP 프로토콜

응갱·2022년 8월 28일
0

✏️HTTP 프로토콜(Hypertext Transfer Protocol)

📎HTTP 프로토콜이란?

인터넷 상에서 데이터를 주고 받기 위한 서버/클라이언트 모델을 따르는 프로토콜이다.

클라이언트는 URL을 이용해서 서버에 접속하고 데이터를 요청한다. 이때, 어떤 종류의 데이터든지 전송이 가능하다.
TCP/IP 통신 위에서 동작하며 80번 포트를 사용한다. (OSI 7계층에 해당한다.)

📎HTTP 특징

  • Connectionless
  • Stateless

http는 connectionless로, 서버에 연결하고 요청해서 응답을 받으면 연결을 끊어버린다. 이때 각각의 데이터 요청이 독립적이다.
connectioneless로 연결을 끊기 때문에 서버는 클라이언트의 이전 상태를 알 수 없는데 이것이 stateless 이다. 이전의 로그가 없어 상태를 유지할 수 없는 것이다. (이전의 기록이 남지 않음.) Http는 cookie를 이용해 이를 해결한다.

📎URL(Uniform Resource Identifiers)

클라이언트 소프트웨어는 URL을 이용해 자원의 위치를 확인한다.
이때, HTTP는 전송프로토콜이고 URL은 자원의 위치를 확인하는 프로토콜이다.

예를 들어, https://www.naver.com/ 와 같은 네이버 URL이 있다.
여기서 https:// 는 https 프로토콜을 사용하고
www.naver.com/ 는 자원의 인터넷 상의 위치이다.

📎HTTP Request Method

메소드는 클라이언트의 요청의 종류를 서버에게 알린다.

  • GET : 존재하는 자원에 대한 요청 (idempotent)
  • POST : 정보를 삽입 (non-idempotent)
  • PUT : 정보를 업데이트
  • DELETE : 정보를 삭제
  • HEAD : (HTTP) 헤더 정보만 요청 / 자원의 존재 여부 또는 서버 상태 확인
  • OPTIONS : 웹서버가 지원하는 메소드의 종류 요청
  • TRACE : 클라이언트의 요청 반환

이때 모든 메소드는 GETPOST로 표현 가능하다.

📎상태 코드(Status code)

  • 2xx - 성공
  • 3xx - 리다이렉션
  • 4xx - 클라이언트 에러
  • 5xx - 서버에러

📎HTTPS와 차이점

HTTP는 암호화 되지 않아 제 3자가 정보조회가 가능하다.
하지만 HTTPS는 데이터 암호화가 추가 되어 제 3자가 정보조회가 불가능하다.
대칭키 암호화와 비대칭키 암호화를 사용한다.

출처

https://shlee0882.tistory.com/107
https://joshua1988.github.io/web-development/http-part1/
https://youtu.be/PUPDGbnpSjw
https://youtu.be/iSFEjQRulf0

profile
🥔 한 덩이

0개의 댓글