2021.12.23

초보개발·2021년 12월 23일
0

TIL

목록 보기
3/17

URI(Uniform Resource Identifier)

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

URI는 통합 자원 식별자라고도 부르며, 인터넷에 상의 자원들을 식별하는 것이다. URI는 locator, name 혹은 둘 다 추가로 분류될 수 있다. 위치는 변할 수 있으나 이름은 변하지 않는다. 그리고 이름으로 자원을 찾는 방법이 보편화 되지 않아 URL이 대중적이다.

  • locator : 리소스의 고유한 위치를 표시함(URL, Uniform Resource Locator)
                     hierarchical part
        ┌─────────────────────────────┴─────────────────────────────┐
               authority                      path
        ┌──────────────────────┴─────────────────────┐┌──────┴──────┐
  abc://username:password@example.com:123/path/data?key=value#fragid1
  └─┬─┘   └──────────┬──────────┘└───────┬────────┘ └─┬─┘          └────┬──────┘└────┬─────┘
 scheme  user information    host     port           query  fragment
  • name : 리소스의 고유한 이름을 부여함(URN)
  urn:example:mammal:monotreme:echidna
  └┬─┘ └──────────────────────┬─────────────────────┘
 scheme               path

URL 문법

scheme://[userinfo@]host[:port][/path][?query][#fragment]
  • scheme : 주로 프로토콜이 사용되며, http(포트번호 80), https(포트번호 443)이 사용되며, 포트는 생략이 가능하다.
  • userinfo : URL에 사용자 정보를 포함해서 인증할 때 사용되나 거의 사용하지 않는다.
  • host : 호스트명, 도메인 또는 IP 주소로 직접 사용할 수 있다.
  • port : 접속 포트이며 일반적으로 생략된다.
  • path : 리소스의 경로이며 계층적 구조이다.
    예시) /home/file1.jpg, /users 등
  • query : 쿼리 파라미터, 쿼리 스트링으로 부르며 웹서버에 제공하는 파라미터이다. key=value 형태로, ?로 시작되고 &로 이어서 추가할 수 있다.
    예시) ?keyA=valueA&keyB=valueB
  • fragment : html 내부 북마크 등에 사용되고 서버에 전송하는 정보는 아니다.

https://www.google.com:443/search?q=hello&hl=ko

  • scheme, 프로토콜 : https
  • 호스트명 : www.google.com
  • 포트 : 443
  • 패스 : /search
  • 쿼리 파라미터 : q=hello&hl=ko

0개의 댓글