URI、URL、URN到底有什么区别?

首先以一张图来说明两者的关系:


在这里插入图片描述
从图中可以得知,URN属于URI,URL属于URI。但URI不一定就是URN或者URL,URI可能是它其中的其他子集比如——URC,或者是URN与URL的结合。


URI

英文全称是Uniform Resource Identifier,中文称为“统一资源标识符”,是一个用于标识某一互联网资源名称的字符串。 简单来讲就是区分不同网络资源的标识符号。用一个形象的比喻——假如网络资源是一个个不同的人,如果要某个网络资源做自我介绍的话,URI就是用来告诉别人你是谁的,同样,告诉别人你是谁的方式也是多种多样的,比如,你可以告诉别人你的名字(URN)或者告诉别人你的家庭住址(URL)等等你独有的信息。

URL

英文全称是Uniform Resource Locator,中文称为“统一资源定位器”,是用于定位一个网络资源文件在网络中的位置,比如http://www.baidu.com就是一个URL,你可以通过该URL定位到百度主页。

URN

英文全称是Uniform Resource Name,中文称为“统一资源名”,是一个文件资源路径,URN与URL不同,URN只说明了你所要的资源在文件的什么地方,而URL则可以在网络中具体的找到你所要找的文件。


简单来说,就是URN是资源在文件中的位置,是资源的“名字”,而URL是资源在网络中的定位,是资源的“地址”,我们常说的“网址”就是指的URL。


拿我的博客网址举例:https://blog.csdn.net/CY2333333#123,https://blog.csdn.net/CY2333333就是一个URL,而blog.csdn.net/CY2333333#123就是一个URN(https://是协议,blog.csdn.net/CY2333333是网络资源文件的具体位置,#123则是代表文件中的某一个具体的资源 (比如 < a <a <a name=“123” > > > < < < / a > /a> /a>))。

假如网址只是https://blog.csdn.net/CY2333333,那URN就直接是blog.csdn.net/CY2333333,URL还是https://blog.csdn.net/CY2333333

综上,URN与URL有一定区别,但URN与URL都是URI。

猜你喜欢

转载自blog.csdn.net/CY2333333/article/details/108282243