[모든 개발자를 위한 HTTP 웹 기본 지식] 2. URI와 웹 브라우저 요청 흐름

0woogie·2023년 6월 3일
0

HTTP 웹 기본 지식

목록 보기
2/8
post-thumbnail

URI(Uniform Resource Identifier)

URI는 로케이터(locator), 이름(name) 또는 둘다 추가로 분류될 수 있다.

  • Uniform: 리소스 식별하는 통일된 방식
  • Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음)
  • Identifier: 다른 항목과 구분하는데 필요한 정보

URL, URN

  • URL - Locator: 리소스가 있는 위치를 지정
  • URN - Name: 리소스에 이름을 부여

URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되어있지 않기 때문에 거의 URL만 사용한다.

URL 구조

scheme

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • https://www.google.com:443/search?q=hello&hl=ko
  • 주로 프로토콜 사용
  • 프로토콜: 어떤 방식으로 자원에 접근할 것인가 하는 약속 규칙
    - 예) http, https, ftp 등등

host

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • https://www.google.com:443/search?q=hello&hl=ko
  • 도메인명 또는 IP 주소를 직접 사용가능

port

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • https://www.google.com:443/search?q=hello&hl=ko
  • 일반적으로 생략 가능하지만 특정 서버에 따로 접근해야할 경우 명시해준다.

path

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • https://www.google.com:443/search?q=hello&hl=ko
  • 리소스의 경로를 의미하며 계층적 구조를 이루고 있다.

query

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • https://www.google.com:443/search?q=hello&hl=ko
  • key=value 형태
  • ?로 시작, &로 추가 가능
  • query parameter, query string 등으로 불림

웹 브라우저 요청 흐름

HTTP 요청 메시지

  • URL을 이용하여 웹 브라우저는 IP(DNS 조회)와 PORT 정보를 찾아낸 후 HTTP 요청 메시지를 생성한다.

HTTP 메시지 전송

패킷 내부의 전송 데이터(HTTP 메시지)

패킷 전송 프로세스

  1. 패킷 전달

  2. 응답 메시지 생성

  3. 응답 패킷 전달

  • HTTP 응답 메시지를 패킷에 담아 전달한다.
  1. 웹 브라우저 HTML 랜더링

Reference

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC

profile
정리하고 다듬기 위한 공간

0개의 댓글