HTTP 개념에 들어가기 직전, HTTP 프로토콜을 활용하여 데이터를 주고 받을 때, 요청하는 방식과 그 흐름에 대해서 짚고 넘어간다.
URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류 될 수 있다.
Uniform: 리소스 식별하는 통일된 방식
Resource: 자원, URI로 식별할 수 있는 모든 것 (제한 없음)
Identifier: 다른 항목과 구분하는 데 필요한 정보

큰 개념으로 URI(리소스를 식별), 그안에 작은 개념으로 URL(리소스 위치), URN(리소스 이름)이 있다.
URL - Uniform Resource Locator
foo://example.com:8042/over/there?name=ferret#nose
URN - Uniform Resource Name
urn:example:animal:ferret:nose
!! 이름만 부여한 것, 실제 리소스의 위치를 잡아주려면 별도의 맵핑 과정이 필요함.
https://www.google.com/search?q=hello&hl=ko
- 프로토콜: https
- 호스트명: www.google.com
- 포트번호: 443
- 패스: /search
- 쿼리 파라미터(q=hello&hl=ko)
scheme://[userinfo@]host[:port][/path][?query][#fragment]
/home/file1.jpg
/members
/members/100, /items/iphone12

1. 데이터 생성 (클라이언트)
2. 서버에 전송
3. HTTP 응답 메시지 생성 (서버)
4. 클라이언에 전송
5. 웹 브라우저 HTML 렌더링 (우리가 보는 화면)
위에 그림처럼 클라이언트에서 HTTP 메시지를 생성해서 패킷을 서버로 전송하고, 위의 단계와 같이 HTML 정보를 수신하여 렌더링을 하면, 우리가 보는 화면이 나오게 된다.
HTTP 메시지에는 어떤 것들이 포함되어 있는 지, 어떻게 다뤄야하는 지 다음 글부터 정리하겠다.
이 링크를 통해 구매하시면 제가 수익을 받을 수 있어요. 🤗