HTTP Transfer

JaySong·2022년 7월 7일
0

TIL

목록 보기
5/34
post-thumbnail

HTTP 통신이란

HTTP란 Hyper Text Transfer Protocol의 줄임말로 두 컴퓨터간의 텍스트 데이터를 인터넷을 통해 주고받는 길을 의미합니다.

두 컴퓨터간의, 즉 Front-end와 Back-end 컴퓨터 간에는 HTTP 요청(Request)과 응답(Response)가 존재합니다.

HTTP 요청과 응답

HTTP 요청(Request)

웹 브라우저 즉 Front-end 컴퓨터에서 게시물을 조회했다고 가정해보자. 그렇게 된다면 Front-end 컴퓨터는 Back-end 컴퓨터에게 게시물에 대한 정보를 데이터베이스에서 가져와 달라고 "요청(request)"을 하게 된다.

HTTP 응답(Response)

요청을 받은 Back-end 컴퓨터는 게시물에 대한 정보를 데이터베이스에서 성공적으로 가지고 올 수 있었는지 에 대한 결과를 Front-end 컴퓨터에게 "응답(Response)"을 하게 된다.

이때 성공, 실패라는 문자열 대신 HTTP 상태 코드(Status Code)를 보내게된다.
상태 코드는 100~599사이의 숫자로 이루어져 있으며

  • 1xx(정보) : 요청을 받았으며 프로세스를 계속 진행합니다.
  • 2xx(성공) : 요청을 성공적으로 받았으며 인식했고 수용하였습니다.
  • 3xx(리다이렉션) : 요청 완료를 위해 추가 작업 조치가 필요합니다.
  • 4xx(클라이언트 오류) : 요청의 문법이 잘못되었거나 요청을 처리할 수 없습니다.
  • 5xx(서버 오류) : 서버가 명백히 유효한 요청에 대한 충족을 실패했습니다.

와 같은 의미를 가지고 있다.

HTTP 헤더와 바디

HTTP 헤더

HTTP 헤더는 HTTP Body와 Request/Response에 관한 정보를 가지고 있다.
HTTP 본문에 관한 정보는 예를 들어 본문의 길이와 같은 정보를 담고 있다.

Request/Response에 과한 정보는 각각 다른 내용을 담고 있다.
Request 헤더의 경우 요청한 URL, 메소드(GET, POST 등등), 요청 생성에 사용 된 브라우저 등등이 담겨 있으며
Response 헤더의 경우 Content-type 즉 응답하는 메시지의 내용이 어떤 종류인지에 관한 정보가 담겨 있다.

HTTP 바디

가져올 실제 데이터 컨텐츠/메시지가 본문에 담겨져 있다.


References


https://stackhowto.com/what-is-http-with-example/
https://www.whatap.io/ko/blog/40/
http://www.cleantutorials.com/html/format-of-http-request-response-header-and-body-with-example
https://velog.io/@starrypro/HTTP%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EC%B4%88-Ch-3.-HTTP

profile
Hello World!

0개의 댓글