클라이언트와 서버 간에 데이터를 전송할 때는 다양한 통신 규약,프로토콜을 따른다.
프로토콜은 컴퓨터 간에 원활하게 통신하기 위해 사용하는 전 세계 표준이다. 기기 간에 각종 신호 처리 방법, 오류 처리, 암호, 인증 방식 등을 규정하고 있어 이를 따라야만 오류나 지연없이 통신이 가능하다.
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 버전과 상태 코드가 주어진다.
'프로그래밍 > Backend' 카테고리의 다른 글
나만의블로그만들기(3) (1) | 2024.08.01 |
---|---|
REST API 뼛속까지 탐구하기 (0) | 2024.08.01 |
나만의블로그만들기(2) (0) | 2024.08.01 |
나만의블로그만들기(1) (0) | 2024.07.31 |
MVC 패턴 (0) | 2024.07.31 |