프로그래밍/Backend

HTTP는 누구일까

supernovaMK 2024. 8. 1. 15:26

클라이언트와 서버 간에 데이터를 전송할 때는 다양한 통신 규약,프로토콜을 따른다.

 

프로토콜은 컴퓨터 간에 원활하게 통신하기 위해 사용하는 전 세계 표준이다. 기기 간에 각종 신호 처리 방법, 오류 처리, 암호, 인증 방식 등을 규정하고 있어 이를 따라야만 오류나 지연없이 통신이 가능하다.

 

HTTP는 웹 서비스에서 사용하는 프로토콜이다.

 

HTTP는 클라이언트의 다양한 요청을 , 메서드를 통해 서버로 보내는 역할을 하고 있다. 대표적인 메서드로는 

  • Post : 데이터 생성 요청
  • Get  : 데이터 조회 요청
  • Patch(Put): 데이터 수정 요청
  • Delte : 데이터 삭제 요청

 

HTTP 상태 코드

 

HTTP 상태 코드는 클라이언트가 보낸 요청이 성공했는지, 실패했는지 알려주는 코드이다.

 

  • 1XX: 요청이 수신돼 처리 중입니다.
  • 2XX: 요청이 정상적으로 처리됐습니다.
  • 3XX: 요청을 완료하려면 추가 행동이 필요합니다.
  • 4XX: 클라이언트 요청이 잘못 돼 서버가 요청을 수행할 수 없습니다.
  • 5XX: 서버 내부에 에러가 발생해 클라이언트 요청에 대해 적절히 수행하지 못했습니다.

 

HTTP 요청 메시지와 응답 메시지

 

HTTP의 요청과 응답은 HTTP 메시지에 실려 전송 되게 된다.

 

  • 시작 라인 : HTTP 요청 또는 응답 내용이 있습니다. 시작 라인은 항상 한줄로 끝납니다.
  • 헤더 : HTTP 전송에 필요한 부가 정보가 있습니다.
  • 빈 라인 :헤더의 끝을 알리는 빈 줄로, 헤더가 모두 전송되었음을 알립니다.
  • 본문 : 실제 전송하는 데이터가 있습니다.

 

요청 메시지
 

<시작 라인과 헤더>

GET /articles HTTP/1.1   --------- 요청의 종류/URL 경로/사용하는 HTTP 버전
Host: localhost:8080   ---------------호스트 주소
 
응답 메시지
 
HTTP 버전과 상태 코드가 주어진다.