URI和URL的区别

1.定义

URI:Uniform Resource Identifier  统一资源标识符,用于唯一的表示每一个资源

URL:Uniform Resource Locator  统一资源定位器,具体的URI或者是URI的一个实例,既可以用来表示一个资源,且可以来指明如何来locate一个资源

URN:Uniform Resource Name    统一资源名称,在某命名空间中可以唯一确定的资源名称

可用一张图来表明三者之间的关系:

可以说,URI可分为三种,URL或URN或是URL和URN

2.构成

URL一般由以下三部分构成:第一部分是协议(或者说是服务方式),第二部分是主机的ip地址或者主机名(常也包括了端口号),第三部分便是主机资源的具体地址

URI也有三部分构成:第一部分Scheme,用来告诉客户端如何来得到资源,常见的scheme有http,https,file等

第二部分是Hostname,即主机名,紧紧跟在scheme后面

第三部分是Path,用来指示主机上资源的具体路径

 

3.位置关系

一个URI实例可以是绝对的,也可以是相对的,只要它符合URI的语法规则。

而URL不仅需要满足自身的语法规则,同时需要指明主机资源的具体路径,因此其只能是绝对的,需要紧紧跟在scheme开头后面;

 

总结一下:

URL是一种具体的URI,它不仅唯一标识资源,而且还指示了资源的路径;而URI是语义上的抽象概念,它既可以是绝对的,也可以是相对的,然URL必须要提供指示主机资源的具体路径的信息,

因此它只能是绝对的。而我们常讲的relative URL 其实是相对于absolute URL而言,所以某种程度上而言其本身并未脱离绝对定位.

 

posted @ 2020-08-22 11:49  良夜  阅读(743)  评论(0编辑  收藏  举报