1. HTTP란?
HTTP(Hypertext Transfer Protocol)는 클라이언트(web browser)와 서버(web server)간의 통신을 위한 규약 또는 프로토콜(protocol)이다. 사용자 브라우저가 웹서버에 HTTP 요청을 전송하고 서버는 HTTP 응답으로 응답한다.
2. HTTP의 구조
HTTP는 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동한다. HTTP는 상태를 가지고 있지 않는 Stateless 프로토콜이며 Method, Path, Version, Headers, Body 등으로 구성된다. 하지만 HTTP는 암호화가 되지 않은 평문 데이터를 전송하는 프로토콜이였기 때문에, HTTP로 비밀번호나 주민등록번호 등을 주고 받으면 제3자가 정보를 조회할 수 있었다. 그리고 이러한 문제를 해결하기 위해 HTTPS가 등장하게 되었다.
3. HTTP 프로토콜 작동방식
HTTP는 OSI(Open Systems Interconnection) 네트워크 통신 모델의 애플리케이션 계층 프로토콜이다. 서버에 요청할 때 상황에 맞는 메소드를 사용해서 요청을 한다.
클라이언트 요청
- GET : 조회
- POST : 생성
- PUT, PATCH : 수정(변경)
- DELETE : 삭제
이외의 다른 method들도 있다. 참고 👇
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
HTTP request methods - HTTP | MDN
HTTP defines a set of request methods to indicate the desired action to be performed for a given resource. Although they can also be nouns, these request methods are sometimes referred to as HTTP verbs. Each of them implements a different semantic, but som
developer.mozilla.org
클라이언트에서 요청을 보내면 서버는 숫자나 데이터양식으로 HTTP응답을 전송한다.
서버 응답
- 1xx(정보) : 요청을 받았으며 프로세스를 계속 진행합니다.
- 2xx(성공) : 요청을 성공적으로 받았으며 인식했고 수용하였습니다.
- 3xx(리다이렉션) : 요청 완료를 위해 추가 작업 조치가 필요합니다.
- 4xx(클라이언트 오류) : 요청의 문법이 잘못되었거나 요청을 처리할 수 없습니다.
- 5xx(서버 오류) : 서버가 명백히 유효한 요청에 대한 충족을 실패했습니다.
'Web' 카테고리의 다른 글
[Web] SSR, CSR, SSG, ISR 이해하기 (0) | 2023.11.02 |
---|---|
[Web] Cookie, Session, Token (0) | 2023.04.30 |
[Web] HTTP와 HTTPS 차이점 (0) | 2023.04.29 |