URI는 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다. 웹 기술에서 사용하는 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스다.
scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]
URL은 흔히 웹 주소라고도 하며, 컴퓨터 네트워크 상에서 리소스가 어디 있는지 알려주기 위한 규약이다. URI의 서브셋이다.
Protocol
Domain Name
Port
Path
Query Parameters
Fragment Identifier(Anchor)
❓ URI 와 URL의 가장 큰 차이점은?
👉 URI는 식별하고, URL은 위치를 가르킨다.
/posts/1
/posts/2
/posts/3
✔ 어떤 특정한 자원을 보여줘야할때 사용
/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라고 볼 수 있다.