URI代表统一资源标识符。URI 是用于标识万维网上资源位置或名称或两者的字符序列。 URI 可以进一步分类为定位符、名称或两者。
URI 的语法:以方案开头,后跟冒号字符,然后是方案特定的部分。
最流行的 URI 方案是 HTTP、HTTPS 和 FTP。
URL代表统一资源位置。URL 是 URI 的一个子集,它描述了资源可用的网络地址或位置。URL 以用于访问资源的协议名称开头,然后是特定的资源位置。 URL 建立在域名服务 (DNS) 之上,以符号方式寻址主机,并使用类似文件路径的语法来标识给定主机上的特定资源。出于这个原因,将 URL 映射到物理资源很简单,并且由各种 Web 浏览器实现。
URN代表统一资源名称。它是一个使用 URN 方案的 URI。
“urn”方案:后跟命名空间标识符,后跟冒号,后跟命名空间特定字符串
URN 并不暗示所识别资源的可用性。URN 是与位置无关的资源标识符,旨在使将其他命名空间映射到 URN 空间变得容易。
No | URI | URL | URN |
---|---|---|---|
1 | URI stands for Uniform Resource Identifier | URL stands for Uniform Resource Location | URN stands for Uniform Resource Name |
2 | URI is a superset of URL & URN | URL is a subset of the Uniform Resource | URN is a subset of the Uniform Resource. |
3 | It used to identify a resource on the internet either by location or a name or both | It is used to identify a resource on the internet either by location | It uniquely identifies the resource by name |
4 | URI is not always a URL | All URLs are URIs | All URNs are URIs |
5 | URI includes components like scheme, authority, path, query, etc. | URL includes protocol,domain,path,hash,query,string etc | URN does not include any component |
6 |
Example: https://www.geeksforgeeks.org/setting-environment-java/?ref=lbp |
Example: https%3A%2F%2Fwww.geeksforgeeks.org%2Fsetting-environment-java%2F%3Fref%3Dlbp |
Example: setting up the environment in java |
下图显示了 URL、URI、URN 之间的关系: