最重要的一句话:URL和URN都是URI的子集,URI可以被分为URL、URN或两者的组合。如果你一直使用URI这个术语,就不会有错。
引言
统一资源标识符(URI)提供了一个简单、可扩展的资源标识方式。URI规范中的语义和语法来源于万维网全球信息主动引入的概念,万维网从1990年起使用这种标识符数据,并被描述为“万维网中的统一资源描述符”。Tim Berners-Lee ,万维网的发明者,同时也是万维网联盟(W3C)的负责人。
三者之间的关系图
具体区别
1.定义:
URI:统一资源标志符(Uniform Resource Identifier)
URL:统一资源定位符(uniform resource location)
URN:统一资源名称 (Uniform Resource Name, URN)
2.区别
关于URL
URL是URI的一种,不仅标识了Web 资源,还指定了操作或者获取方式,同时指出了主要访问机制和网络位置。
关于URN
URN是URI的一种,用特定命名空间的名字标识资源。唯一标识一个实体的标识符,但是不能给出实体的位置。使用URN可以在不知道其网络位置及访问方式的情况下讨论资源。
例子
这是一个URI:
http://bitpoetry.io/posts/hello.html#intro
分析:
http://
是定义访问资源的方式。bitpoetry.io/posts/hello.html
是资源存放的位置#intro
是资源
这个例子中:
URL是URI的一个子集,告诉我们访问网络位置的方式。应该是这样的:
URN是URI的子集,包括名字(给定的命名空间内),但是不包括访问方式。应该是这样的:
bitpoetry.io/posts/hello.html#intro