[웹] URL vs URI

Yongwoo Cho·2022년 2월 7일
0

TIL

목록 보기
59/98
post-thumbnail
post-custom-banner

URI

URI는 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다. 웹 기술에서 사용하는 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스다.

URI의 구조

scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]

URL

URL은 흔히 웹 주소라고도 하며, 컴퓨터 네트워크 상에서 리소스가 어디 있는지 알려주기 위한 규약이다. URI의 서브셋이다.

URL의 구조

  1. Protocol

    • http(Hyper Text Transfer Protocol)는 프로토콜(규약)이다.
    • 브라우저에서 가장 많이 사용되는 https/http외에도 mailto: (이메일 주소를 지정하는 프로토콜), ftp: (파일을 주고받는 프로토콜) 등 다양한 프로토콜이 존재한다.
  2. Domain Name

    • 도메인 네임은 URL에서 웹서버의 위치를 지정한다.
  3. Port

    • 웹서버에서 자원을 접근하기 위해 사용하는 관문으로 표준 HTTP 포트는 80번 HTTPS는 443이다. 표준 포트를 사용한다면 포트번호는 보통 생략한다.
  4. Path

    • 웹서버에서 자원에 대한 경로
    • 루트 자원을 나타내려면 “/”을 사용한다.
  5. Query Parameters

    • & 기호로 구분된 키/값으로 짝을 이룬 리스트로 키와 값은 =문자로 구분한다.
  6. Fragment Identifier(Anchor)

    • 세부항목에 대한 책갈피 역할 ex) 특정 스크롤 위치로 이동
    • 요청이 서버에 보내지지 않는다.

❓ URI 와 URL의 가장 큰 차이점은?
👉 URI는 식별하고, URL은 위치를 가르킨다.

자원을 식별하기위해 사용하는 방법

  • Path Variable 방식
/posts/1
/posts/2
/posts/3

✔ 어떤 특정한 자원을 보여줘야할때 사용

  • Query Parameter 방식
/posts?writer=yongwoo
/posts?wrtier=yongwoo&age=28

✔ 자원들을 필터링해서 보여줄때 사용

예시

http://ywc8851.co.kr/index

ywc8851.co.kr 에서 index라는 경로를 나타내고 있다. 서버에서는 해당 라우팅에 대한 알맞은 자원을 전송해줄 것이며 이는 자원의 실제 위치이므로 URL이다.

http://ywc8851.co.kr/posts/95

ywc8851.co.kr 에서 95의 ID값을 가지고있는 자원을 식별하고있다. 따라서, http://ywc8851.co.kr/posts/ 까지는 자원의 실제 위치이기 때문에 URI임과 동시에 URL이며 끝의 /95 부분은 식별자이므로 http://ywc8851.co.kr/posts/95은 URL(http://ywc8851.co.kr/posts)을 포함한 URI라고 볼 수 있다.

http://ywc8851.co.kr/posts?id=95

위와 마찬가지로 http://ywc8851.co.kr/posts 까지는 자원의 실제 위치를 나타내기 때문에 URL이라고 할 수 있으며, 뒤의 쿼리스트링 식별자(?id=95)를 포함하여 URI라고 볼 수 있다.

profile
Frontend 개발자입니다 😎
post-custom-banner

0개의 댓글