URI(Uniform Resource Identifier) : 통합 자원 식별자
- 말 그대로 자원을 식별<이 파일이 어떤 파일이다!>할 수 있게 해주는 녀석
- URN일수도 URL의 형태를 가질수도 있다.
- 즉 접근 가능한 개체일수도 접근 가능하지 못하는 개체일 수도 있다.
URN(Uniform Resource Name) : 파일에 대해 인터넷을 통한 접근 목적이 아닌 식별 자체에 목적을 가지고 있음.
파일 혹은 리소스를 식별할 수 있는 이름이라고 생각
접근을 위한 인터넷 프로토콜을 동반하지 않음
주소는 변할 수 있으나 리소스의 고유한 이름은 변하지 않는다.
쉽게 이해해보려면 도서 혹은 주민등록번호를 생각하면 된다
도서번호는 각 도서에 매겨지는 고유한 키값이다.
주민등록번호는 사람의 위치와 상관없이 그 사람을 식별할 수 있는 이름과 같다.
우리가 주민등록번호만 안다고 그 사람이 어디에 있는지 모른다는 것이 URN의 한계이다.
Ex) urn:392039-2390209 등으로 표현할 수 있다.
URL(Uniform Resource Locator) : 인터넷 프로토콜(https://, file://)이 붙여진 형태로 접근 가능한 형태의 리소스 주소
URN에서 프로토콜이 붙어 실제 리소스가 있는 곳으로 접근이 가능함
scheme://[userinfo@]host[:port][/path][?query][#fragment]로 표현하는데,
쉽게 말해서 블로그 내의 특정 게시물의 주소라고 생각해도 된다.
또한 클라이언트에서 별도의 파라미터를 입력할 때는 [?query] 파트에 입력하고,
프론트 단에서 작성된 fragment가 있으면 특정 페이지 내의 앵커로 이동할 수 있다.
Ex) https://www.naver.com/blog명/1938193 등으로 표현할 수 있다.
URI는 URN과 URL을 모두 포함하는 단어이고
모든 URN과 URL은 URI이지만 모든 URI가 URN이나 URL로 나타낼 수는 없다