[HTTP] 트랜젝션

jaylight·2021년 1월 3일
0

트랜젝션

  • 클라이언트가 웹 서버와 리소스를 주고받기 위한 요청 명령과 응답 결과
  • (요청 명령) HTTP 요청 메시지는 명령과 URI를 포함
GET / specials/saw-blade.gif HTTP/1.0
Host: www.joes-hardware.com
  • (응답 결과) 트랜잭션의 결과를 포함
HTTP/1.0 200 OK
Content-type: image/gif
Content-length: 8572

메서드

  • HTTP메서드: 여러 가지 요청 명령 방법론
  • 서버에게 어떤 동작이 취해져야 하는지 알려줌
    • 웹 페이지 가져오기, 게이트웨이 프로그램 실행하기, 파일 삭제하기 등

[대표적 메서드]

  • GET: 서버에서 클라이언트로 지정한 리소스를 보내라
  • PUT: 클라이어트에서 서버로 보낸 데이터를 지정한 이름의 리소스로 저장
  • DELETE: 지정한 리소스를 서버에서 삭제
  • POST: 클라이언트 데이터를 서버 게이트웨이 애플리케이션으로 전송
  • HEAD: 지정한 리소스에 대한 응답에서, HTTP 헤더 부분만 전송

상태 코드

  • 클라이언트에 요청이 성공했는지 혹은 추가 조치가 필요한지 알려주는 세 자리 숫자
  • 모든 HTTP 응답 메시지는 상태 코드와 함께 반환

[대표적 상태 코드]

  • 200: 성공. 문서가 올바르게 반환됨

  • 302: 다시 보낼 것. 다른 곳에서 리소스를 가져가라

  • 404: 없음. 리소스를 찾을 수 없음

  • (사유 구절(reason phrase)) 숫자 상태 코드에 설명을 위해 붙는 짧은 텍스트

    • 실제 응답 처리에 활용되는 것이 아니며, 설명을 위해 포함됨

[사유 구절 예시]

200 OK
200 Document attached
200 Success
200 All's cool, dude

웹페이지는 여러 객체로 구성 → 여러 트랜젝션을 수행

  • 애플리케이션은 하나의 작업 수행을 위해 여러 HTTP 트랜젝션을 수행
  • 예시: 시각적으로 풍부한 웹페이지 로딩에 여러 번의 HTTP 트랜젝션을 수행
  • 페이지 레이아웃 서술 HTML 뼈대
  • 첨부 이미지
  • 그래픽 조각
  • 자바 애플릿

0개의 댓글