웹 요청과 응답

최연재·2022년 11월 9일
0

기술스터디

목록 보기
3/3
post-thumbnail
  1. HTTP 개념
  2. 요청과 응답 흐름
  3. HTTP Request 구조
  4. HTTP Response 구조
  5. 추가사항

1. HTTP 개념

  • HyperText Transfer Protocol
  • HyperText(HTML) 문서를 교환하기 위해 만들어진 Protocol(통신 규약)
  • 주로 TCP를 사용하고 HTTP3부터는 UDP를 사용하며 80번 포트를 사용

2. 요청과 응답 흐름

클라이언트와 서버가 HTTP(s)의 규약 아래에 요청과 응답을 주고 받음.

1. 클라이언트(Client)

정보, 자원, 서비스를 사용하는 측
요청을 보내는 측
\to 예시 : 웹브라우저(크롬, 파이어폭스, 사파리 등등)

2. 서버(Server)

정보, 자원, 서비스를 제공하는 측
요청을 받고 응답하는 측
\to 예시 : 웹 서버(아파치 HTTP서버, NGINX, 마이크로소프트 인터넷 정보 서비스(IIS) 등등)

3. HTTP Request 구조

1. Start Line

구조
\to [HTTP Method][Request target][HTTP version]
\to 예시) GET / test.html HTTP/1.1

  1. HTTP Method
    : 요청의 의도를 담고 있는 GET, POST, PUT, DELETE 등이 해당함
  2. Request target
    : HTTP Request가 전송되는 목표 주소
  3. HTTP version
    : version에 따라서 Request 메시지 구조나 데이터가 다를 수 있어서 version을 명시해야 함.

2. Headers

해당 Request에 대한 추가 정보를 담고 있는 부분
\to 요청 하려는 서버 호스트 이름, 포트 번호, cookie, authorization

3. Body

HTTP request가 전송하는 데이터를 담고 있는 부분

4. HTTP Response 구조

1. Status Line


구조
\to [HTTP version][Status Code] [Status Text]
\to 예시) HTTP/1.1 200 OK

  1. HTTP version
  2. Status Code
  3. Status Text

2. Headers

Request Headers와 동일 (다만, response에서만 사용되는 header 값들도 존재)

3. Body

Request Body와 일반적으로 동일 (비어있을수도 있음)

5. 추가사항

클라이언트 (웹 브라우저)가 응답을 받은 후 필요한 리소스들을 추가 요청하여 응답을 받는다.
\to 예를 들어, 특정 홈페이지에 접속한 경우 자바스크립트, 이미지 파일 등을 추가적으로 요청하여 받음.

이 글은 아래의 사이트 내용을 참고하였습니다.
\to https://hahahoho5915.tistory.com/62
\to https://www.youtube.com/watch?v=0jV7xOUcKog&list=PLgXGHBqgT2TvpJ_p9L_yZKPifgdBOzdVH&index=151

profile
가보자고

0개의 댓글