URI와 웹 브라우저 요청 흐름

jeongwon yun·2023년 3월 8일
0

Http

목록 보기
2/8

URI

Uniform Resource Identifier

URI? URL? URN?

URL: 리소스 위치
URN: 리소스 이름
URI: 리소스 식별자


URI 뜻

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

URL, URN 뜻

  • 위치는 변할 수 있다.
  • 이름은 변하지 않는다.
  • URN은 책의 isbn과 같은 것이다.
  • 이름만으로 실제 리소스를 찾는 방법이 보편화되지 않았다.
  • 앞으로 URI를 URL과 같은 의미로 이야기할 것이다.

URL 문법

  • scheme://[userinfo@]host[:port][/path][?query][#fragment]

  • ex) http://www.google.com:443/search?q=hello&hl=ko

  • 프로토콜 (http)

  • 호스트명 (www.google.com)

  • 포트 번호 (443)

  • 패스 (/search)

  • 쿼리 파라미터 (q=hello&hl=ko)

scheme

  • 주로 프로토콜 사용
  • 프로토콜: 어떤 방식으로 자원에 접근할 것인가 하는 약속
    • ex) http, https, ftp 등등
  • http는 80 포트, https는 443 포트를 주로 사용, 포트는 생략 가능
  • https는 http에 보안 추가 (HTTP Secure)

userinfo

  • URL에 사용자정보를 포함해서 인증
  • 거의 사용 안함

host

  • 호스트명
  • 도메인명 또는 IP 주소를 직접 사용가능

PORT

  • 접속 포트
  • 일반적으로 생략한다, http는 80, https는 443

path

  • 리소스 경로, 계층적 구조

query

  • key=value 형태
  • ?로 시작, & 추가 가능
    • ex) ?keyA=value&keyB=valueB
  • query parameter, query string 등으로 불림, 웹서버에서 제공하는 파라미터, 문자 형태

fragment

  • html 내부 북마크 등에 사용
  • 서버에 전송하는 정보 아님

웹 브라우저 요청 흐름

URL에 접속을 하면 HTTP 요청 메시지를 만든다.

TCP/IP 패킷에 HTTP 메시지를 담아서 서버로 요청 패킷을 보낸다.

서버에서도 HTTP 응답 메시지를 만든 후 TCP/IP 패킷에 응답 메시지를 담아 클라이언트로 보낸다.

클라이언트는 응답 데이터를 렌더링한다.


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

0개의 댓글