HTTP(HyperText Transfer Protocol)

설정·2021년 4월 14일
1

🧐 HTTP(HyperText Transfer Protocol)

텍스트 기반의 통신 규약으로 웹 환경에서 브라우저와 웹서버가 통신하는 방법을 말하며 규칙이 정해져 있기 때문에 서로 정보를 교환할 수 있다.

  • HTTP 작동방식

    • 요청 : client -> request -> server
    • 응답 : client <- response <- server
  • HTTP 메세지

    클라이언트 -> 서버에게 요청 & 서버 -> 클라이언트에게 응답할 때 정보를 담아서 보내는 메세지
    HTTP 메세지는 시작줄, 헤더, 본문으로 구성된다.

  • HTTP 구성

    • request

    • response

  • HTTP 메소드

    • GET : 서버에 자원을 조회 : READ
    • POST : 서버에 자원을 생성 : CREATE
    • PUT : 서버의 자원을 수정 : UPDATE
    • DELETE : 서버의 자원을 제거 : DELETE

    🐞 put과 patch의 차이점

    • PUT : replace(대체)
    • PATCHC : update(일부분만 수정)
  • HTTP 속성

    • stateless(무상태)
      : http 모든 요청은 독립적이다(각 요청과 응답은 독립적)
    • connectionless(비연결성)
      : 요청 한번에 응답 한번 -> 응답이후 요청이 끊어짐(하나의 요청에 2번 응답불가)
      => 이 단점을 해결하기 위해 CookieSession이 등장
  • HTTP 상태코드(STATE CODE)

    • 100번대 : Information : 정보응답
    • 200번대 : Success : 성공적인 응답
    • 300번대 : Redirection : 리다이렉션 메세지(request 완료를 위해 추가적인 동작이 필요)
    • 400번대 : Client Error : 클라이언트 오류
    • 500번대 : Server Error : 서버 오류

🧐 HTTPS(HTTP over Secure Socket Layer)

SSL(Secure Socket Layer)을 이용한 HTTP 통신 방식으로 데이터가 암호화 되지 않는 HTTP의 단점을 극복하고자 만든 기술입니다.

SSL(Secure Socket Layer)
보안 소켓 계층을 이르는 것으로, 인터넷상에서 데이터를 안전하게 전송하기 위한 인터넷 암호화 통신 프로토콜

HTTP와 HTTPS의 차이

HTTP는 보안이 취약한 반면, HTTPS는 SSL 인증서를 통해 안전하게 데이터를 주고 받을 수 있다. 하지만 HTTPS는 암호화/복호화 과정이 필요하기 때문에 HTTP 속도보다 조금 느리다.(지금은 별 차이가 없지만...)
그리고 HTTPS는 인증서를 발급하고 유지해야하기 때문에 비용이 발생한다.

📚 Reference

https://dololak.tistory.com/541

0개의 댓글