URI包括URL和URN两个类别,URL是URI的子集,所以URL一定是URI,而URI不一定是URL

URI = Universal Resource Identifier 统一资源标志符,用来标识抽象或物理资源的一个紧凑字符串。

URL = Universal Resource Locator 统一资源定位符,一种定位资源的主要访问机制的字符串,一个标准的URL必须包括:protocol、host、port、path、parameter、anchor。

URN = Universal Resource Name 统一资源名称,通过特定命名空间中的唯一名称或ID来标识资源。

举个栗子:

个人的身份证号就是URN,个人的家庭地址就是URL,URN可以唯一标识一个人,而URL可以告诉邮递员怎么把货送到你手里。

再举个栗子:

https://blog.csdn.net/GTQ28是个URL,通过这个网址可以告诉CDN找到我的博客所在地,并且还告诉用HTTP协议访问。

详细说明

一、URI
<1>什么是URI

URI,统一资源标志符(Uniform Resource Identifier, URI),表示的是web上每一种可用的资源,如
HTML文档、图像、视频片段、程序等都由一个URI进行标识的。

<2>URI的结构组成

URI通常由三部分组成:

①资源的命名机制;

②存放资源的主机名;

③资源自身的名称。

(注意:这只是一般URI资源的命名方式,只要是可以唯一标识资源的都被称为URI,上面三条合在一起是URI的充分不必要条件)

二、URL

URL是URI的一个子集。它是Uniform Resource Locator的缩写,译为“统一资源定位 符”。

通俗地说,URL是Internet上描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上。

采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。URL是URI概念的一种实现方式。

URL的一般格式为(带方括号[]的为可选项):

protocol : // hostname[:port] / path / [;parameters][?query]#fragment

URL的格式由三部分组成:

①第一部分是协议(或称为服务方式)。

②第二部分是存有该资源的主机IP地址(有时也包括端口号)。

③第三部分是主机资源的具体地址,如目录和文件名等。

第一部分和第二部分用“: //”符号隔开,

第二部分和第三部分用“/”符号隔开。

第一部分和第二部分是不可缺少的,第三部分有时可以省略。

<3>URL举例

如:https://blog.csdn.net/GTQ28

我们可以这样解释它:

①这是一个可以通过https协议访问的资源,

②位于主机 blog.csdn.net上,

③通过“GTQ28”可以对该资源进行唯一标识(注意,这个不一定是完整的路径)

三、URI和URL之间的区别

从上面的例子来看,你可能觉得URI和URL可能是相同的概念,其实并不是,URI和URL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集,它不仅唯一标识资源,而且还提供了定位该资源的信息。URI是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。

四、通俗说

统一资源标志符URI就是在某一规则下能把一个资源独一无二地标识出来。
拿人做例子,假设这个世界上所有人的名字都不能重复,那么名字就是URI的一个实例,通过名字这个字符串就可以标识出唯一的一个人。现实当中名字当然是会重复的,所以身份证号才是URI,通过身份证号能让我们能且仅能确定一个人。
那统一资源定位符URL是什么呢。也拿人做例子然后跟HTTP的URL做类比,
就可以有:动物住址协议://地球/中国/浙江省/杭州市/西湖区/某大学/14号宿舍楼/525号寝/张三.人
可以看到,这个字符串同样标识出了唯一的一个人,起到了URI的作用,所以URL是URI的子集。URL是以描述人的位置来唯一确定一个人的。

URL和URI的区别及理解相关推荐

  1. 通熟理解urL和urI的区别

    转载自:https://blog.csdn.net/simplebam/article/details/72644094 关于URL和URI的区别,个人见解. 初学java,最近被一个概念搞得头晕脑胀 ...

  2. URL和URI的区别 【转】

    2019独角兽企业重金招聘Python工程师标准>>> URL和URI的区别 [转] 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还是英文啊,靠 ...

  3. 一招明白URL和URI的区别

    URL和URI的区别(示例): URL[统一资源定位器]: http://localhost:8080/api/account/queryAccountInfo URI[统一资源定位符]: /api/ ...

  4. 【转】URL和URI的区别

    [转]URL和URI的区别 译者:华科小涛:http://www.cnblogs.com/hust-ghtao/: 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还 ...

  5. URL和URI 的区别

    对于很多刚入门web开发的程序员新人,相信都有过对URL和URI 区分困扰的时候,似乎两者是一体的.对于两者的区别,我当时也是处于糊里糊涂的状态.下面,来简明说明下区分两者的要点,扫清对他们的困扰. ...

  6. URN、URL、URI的区别

    三者关系: URI(Uniform Resource Identifier ):统一资源标识符,就是在某一规则下能把一个资源独一无二地标识出来. URL(Uniform Resource Locato ...

  7. url与uri的区别

    uri包含url,但并不是所有的uri都是url,url中一定要有协议,比如ftp, http, https等,如下图: 转载于:https://www.cnblogs.com/wlemory/p/5 ...

  8. 你知道URL、URI和URN三者之间的区别吗?

    这是一个经典的技术争论,许多人都会自问:URL.URI,很可能还有URN,它们之间的区别是什么.虽然,现在我们简单地把 URN 和 URL 都看做 URI,但严格来说URI可以进一步划分为URL.UR ...

  9. URI,URL,URN的区别

    URI: Uniform Resource Identifier URL: Uniform Resource Locator URN: Uniform Resource Name URI是其他两者的超 ...

  10. URI、URL和URN的区别和联系

    什么是URI.URL.URN? URI(Uniform Resource Identifier ):统一资源标识符.URI类似于资源的 id,一个URI能够标识唯一一份资源,但反之则未必. URL(U ...

最新文章

  1. [51单片机学习笔记ONE]-----LED灯的多种使用方法
  2. .net中关键字new的用法
  3. 【最全PPT下载+直播回放】DTCC 2019:阿里云数据库8大要点精彩回顾
  4. Linux笔记-shell遍历数组并判断是否等于某个值
  5. OCR常见问题(4)
  6. Flutter进阶—实现动画效果(七)
  7. lucene: 索引建立完后无法查看索引文件中的数据
  8. python神奇功能_16个你毫不知道的Python神奇技能
  9. bzoj 1681: [Usaco2005 Mar]Checking an Alibi 不在场的证明(BFS)
  10. 9. PHP 字符串
  11. 电源大师课笔记 1.5
  12. oracle 索引个数限制,oracle索引详解
  13. python入门汇总
  14. java抖音字符视频_java爬取新版抖音无水印视频教程(2020/09/14附带java代码)
  15. 论文整理:Probabilistic Logic Neural Networks for Reasoning
  16. DES加密解密base64转码和iphone平台一致结果
  17. 微信小程序上传文件到阿里OSS教程
  18. socket套接字各个接口
  19. python使用xlwings库操作Excel常见操作
  20. 使用代理抓取反爬微信文章

热门文章

  1. python通信系统仿真_Python与V-REP联合仿真
  2. python图片保存pdf_python将图像保存为pdf及图片
  3. 小米pro gtx右下角存在图标显示不全
  4. python文档中文版下载,python帮助文档中文版
  5. app软件测试用例文档模板,最好用的软件测试用例模板一详细用例(经典)-20210630010251.pdf-原创力文档...
  6. 《水经注全国POI兴趣点1.0》发布
  7. 使用URLOS在linux系统中极速部署NFS共享存储服务
  8. java100集视频_上百集课程JAVA区块链开发视频教程
  9. SM2算法全套(基于GMSSL)
  10. 元胞自动机及其MATLAB实例