- HyperTexT Protocol, 하이퍼텍스트를 빠르게 교환하기 위한 규약
- 여기서 하이퍼텍스트란, 단순 텍스트가 아닌 하이퍼링크 같은거라 생각하면 된다
- 기본적으로 서버와 클라이언트가 어떻게 메시지를 교환할지 정한 규칙이며, Request, Response 구성에, 80번 포트를 사용한다
- 브라우저 내 특정 페이지에서 링크를 클릭, Request를 날리면, 새로운 페이지로 Response를 받아 포워딩해주는 방식
메시지 종류
요청
- GET : 클라이언트가 서버에게 URL에 해당하는 자료를 요청한다
- POST : 클라이언트가 서버에게 데이터를 처리하는 요청을 보낸다
- OPTIONS : URL에 지원하는 요청 메시지 목록을 요청한다
- 웹 기반 전송을 위해 정해진 규약이 있는데, 이를 REST라고도 한다
응답
2XX
- 200 : 요청을 정상적으로 수행함, 기본 성공값
- 201 : 클라이언트가 어떤 리소스 생성을 요청, 리소스가 성공적으로 생성 (POST 요청에 한함)
3XX
- 301 : 리소스에 대한 URI가 변경되었을때 사용, 응답 Header에 변경된 URI를 넣어줘야 한다
- 혹시나 서버 클라이언트를 통해 요청했는데 301이 오면 http인지 https로 던져야 하는지 확인해볼 것
4XX
- 400 : 요청이 부적절한 경우 사용
- 401 : 클라이언트가 인증되지 않았을때 사용
- 403 : 서버가 요청을 거부할때 사용
- 405 : 허용되지 않은 Method로 요청했을때 사용