개발 무지렁이

[HTTP] HTTP 트랜잭션: 요청명령과 응답결과 with HTTP 메시지 본문

HTTP

[HTTP] HTTP 트랜잭션: 요청명령과 응답결과 with HTTP 메시지

Gaejirang-e 2023. 7. 29. 15:02

🍍 트랜잭션이란
데이터 조작이 일어나는 여러 프로세스
하나의 단위로 묶어,
🧩 일관성있게 commit 또는 rollback할 수 있게
🧩 원자성을 부여한 것을 말한다.

HTTP 트랜잭션
웹페이지는 여러 객체로 이루어질 수 있다.
하나의 작업을 수행하기 위해 여러 HTTP 트랜잭션을 수행한다.
(뼈대(레이아웃), 첨부된 이미지, 그래픽조각, 자바 애플릿 ETC...)

➡️요청명령과 ⬅️응답결과로 구성
with HTTP 메시지 (정형화된 데이터 덩어리)

⭐. 시작줄은 어떤 동작이 일어나야 하는지 말해준다.
⭐. 시작줄과 헤더는 CR + LF로 구성된 줄바꿈 문자열로 끝난다.
⭐. 헤더나 엔티티본문이 없더라도 CRLF(Carriage Return, Line Feed) (빈줄)로 끝나야 한다.

🌝 HTTP 요청 메시지
시작줄: <명령(method)> <요청URL> <HTTP ver.>
헤더: host, Accept, Accept-language

☁️ 흔히 쓰이는 HTTP method
GET: 요청URL로 지정한 리소스를 보내라
POST: 클라이언트 데이터를 서버로 보내라
PUT: 보낸 데이터를 요청URL의 이름대로 리소스로 생성 및 콘텐츠 변경해라
DELETE: 요청URL로 지정한 리소스를 삭제해라
HEAD: 지정한 리소스에서 HTTP 헤더부분만 보내라

⚠️ HEAD로 반환되는 헤더가 GET으로 얻는 것과 정확히 일치함을 보장해야한다.

🌚 HTTP 응답 메시지
시작줄: <HTTP ver.> <상태코드> <사유구절>
헤더: server, Content-length, Content-type
엔티티본문

☁️ 상태코드
2xx Successful: 성공
3xx Redirection: 다른 URL에서 리소스를 가져가라
4xx Client Error: 잘못된 요청
5xx Server Error: 서버가 요청 처리 x

301(Moved Permanently)
302(Moved Temporarily)
304(Not Modified)
:
리소스에 대한 로컬복사본이 조건부요청에 대해 수정되지 않았음을 의미
404(Not Found)
Comments