先举一个例子,让大家对这三个名词又一个基本的概念:

1⃣️ ftp://ftp.is.co.za/rfc/rfc1808.txt

2⃣️ http://www.cnblogs.com/nods/p/8985322.html#position

上面列举了十分常见的两个网络地址,这两个地址都是 URI。

其中的 ftp://ftp.is.co.za/rfc/rfc1808.txt 和 http://www.cnblogs.com/nods/p/8985322.html 都是 URL。

其中的 ftp.is.co.za/rfc/rfc1808.txt 和 www.cnblogs.com/nods/p/8985322.html#position 是URN。

对于 2⃣️ 来说:

http:// 是协议 ( 文章最下方给出了常用的几种模式或协议 )。

www.cnblogs.com/nods/p/8985322.html 是网络资源的具体位置。

#position 则是资源。

那么简单的理解就是 URL 告诉你资源文件在网络上的具体位置,URN 告诉你资源在文件的什么地方。

URL 和 URN 都是 URI 的子集,以上的解释是十分简单通俗的解释。上面两个网络地址,都叫做 URI, 但URI 但表现形式并不单单只有上述两种,还有很多其他但形式。

URI 英文全称为 Uniform Resource Identifier(统一资源标识符),它是一个标准,而非定义具体但表现方式。

URL Uniform Resource Locator(统一资源定位符),它实际上是一个资源标识符,但更具体的,它定位了资源的位置。

URN Uniform Resource Name(统一资源命名),作为特定内容的唯一名称使用的,与当前资源的所在地无关。使用URN,就可以将资源四处迁移,而不用担心迁移后无法访问。P2P下载中使用的磁力链接是URN的一种实现,它可以持久化的标识一个BT资源,资源分布式的存储在P2P网络中,无需中心服务器用户即可找到并下载它。

关于这三者有专门的出处:

这三个缩略词是Tim Berners-Lee在一篇名为 RFC 3986: Uniform Resource Identifier (URI): Generic Syntax 的文档中定义的互联网标准追踪协议。

也可在 https://en.wikipedia.org/wiki/Uniform_Resource_Identifier 找到相关的来龙去脉。

通过下面的例子(源自 Wikipedia),我们可以很好地理解URN 和 URL之间的区别。如果是一个人,我们会想到他的姓名和住址。

URL类似于住址,它告诉你一种寻找目标的方式(在这个例子中,是通过街道地址找到一个人)。要知道,上述定义同时也是一个URI。

相对地,我们可以把一个人的名字看作是URN;因此可以用URN来唯一标识一个实体。由于可能存在同名(姓氏也相同)的情况,所以更准确地说,人名这个例子并不是十分恰当。更为恰当的是书籍的ISBN码和产品在系统内的序列号,尽管没有告诉你用什么方式或者到什么地方去找到目标,但是你有足够的信息来检索到它。

对于 web 前端来说,着重了解 URL,而其中的网络协议则是重中之重。

最常见的模式和协议如下:

  • http-超文本传输协议资源;
  • https-用安全套接字层传送的超文本传输协议;
  • ftp-文件传输协议;
  • mailto-电子邮件地址;
  • file-当地电脑或网上分享的文件;
  • telnet-telnet协议;
  • idap-轻型目录访问协议搜索;
  • news-Usenet新闻组;
  • gopher-Gopher协议。

什么是URI,URL以及URN,你真的理解了吗。的更多相关文章

  1. URI, URL, and URN

    URI: uniform resource identifier,统一资源标识符,用来唯一的标识一个资源. URL: uniform resource locator,统一资源定位器,它是一种具体的U ...

  2. URL、URN、URI的区别?

    URL.URN.URI区别 既然Web应用程序的文件等资源是放在服务器上,而服务器是因特网(Internet)上的主机,当然必须要有个方法,告诉浏览器到哪里取得文件等资源.通常会听到有人这么说:“你要 ...

  3. 关于URI URL URN

    刚琢磨.整理了关于escape.encodeURIComponent.encodeURI的知识.突然又对URI有点模糊了,遂整理了以下资源 : 资源一: URL,URI 和URN 的举例理解 资源二: ...

  4. URI、URL、URN介绍

    注:1. 仅从http(Hypertext Transfer Portocol)角度阐述,不涉及语言层面的类库. 2. 以下内容均参考<Http权威指南>一书. 一.万维网构成       ...

  5. uri,url.urn

    uri:Web上可用的每种资源 - HTML文档.图像.视频片段.程序等 - 由一个通过通用资源标志符(Universal Resource Identifier, 简称"URI" ...

  6. URI、URL和URN

    URI.URL和URN URI :Uniform Resource Identifier,通用资源标识符: URL:Uniform Resource Locator,统一资源定位符: URN:Unif ...

  7. URI、URL以及URN的区别

    首先,URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源.而URL是uniform resource locator,统一资源定位器,它是一种具体 ...

  8. URI、URL、URN

    URI.URL.URN URI(Uniform Resource Identifie):统一资源标识符 URL(Uniform Resource Locator):统一资源定位符 URN(Unifor ...

  9. Http权威指南笔记(一) URI URL URN 关系

    定义 URI:统一资源标识符(Uniform Resource Indentifier)用来标识服务器上的资源. URL:统一资源定位符(Uniform Resouce Locator)是资源标识符最 ...

随机推荐

  1. centos安装python与jdk

    安装python #压缩包安装 [root@china ~]# yum -y install zlib* Loaded plugins: fastestmirror, refresh-packagek ...

  2. Docker容器(三)

    一.创建容器 容器是Docker另一个核心的概念,简单来说,容器是镜像的一个运行实例,所不同的是,镜像是静态的只读文件,而容器带有运行时需要的可写文件层 1.1. 新建容器 使用docker crea ...

  3. 常用chrome插件&&常用FireFox插件

    第一部分:chrome插件 chrome中输入  chrome://chrome-urls/   可以得到包括缓存在内的很多相关信息. 1.掘金chrome插件 点击下载 掘金是一个高质量的互联网技术 ...

  4. 关于类型Type

    每一个JC语法节点都含有type属性,因为做为所有JC语法节点的父节点JCTree含有type属性.其继承关系如下图. 下面看一下Type类的定义及重要的属性. public class Type i ...

  5. 如何写一个拼写检查器-by Peter Norvig

    本文原著:Peter Norvig  中文翻译:徐宥 上个星期, 我的两个朋友 Dean 和 Bill 分别告诉我说他们对 Google 的快速高质量的拼写检查工具感到惊奇. 比如说在搜索的时候键入 ...

  6. docker 使用compose安装zookeeper集群

    此基础镜像使用的为zookeeper的官方镜像 docker pull zookeeper 新建文件 docker-compose.yml version: ' services: zookeeper ...

  7. C#中给滚动条增加鼠标滚动轮控制事件

    当滚动条的父控件获得焦点时,可以使用鼠标的滚动轮来控制滚动条 public partial class Form1 : Form { public Form1() { InitializeCompon ...

  8. PM2怎么开启ES6?

    node版本v6.14.2,无论是用配置文件 { "apps": [{ "name": "server", "script&quo ...

  9. UML——六大关系整理

    UML——六大关系整理 1.定义 是一种面向对象的建模语言,它是运用统一的.标准化的标记和定义实现对软件系统进行面向对象的描述和建模(百度百科). 2.六种关系 这六种关系分别为,继承.实现.关联.聚 ...

  10. hadoop2.x学习笔记(一):YARN

    一.YARN产生的背景 MapReduce1.x存在的问题:单点故障&节点压力大不易扩展. 资源利用率&成本 催生了YARN的诞生  不同计算框架可以共享同一个HDFS集群上的数据,享 ...