URI与URL

简单理解是这样的:
理解URI和URL的区别,我们引入URN这个概念。

URI = Universal Resource Identifier 统一资源标志符
URL = Universal Resource Locator 统一资源定位符
URN = Universal Resource Name 统一资源名称

首先我们要弄清楚一件事:URL和URN都是URI的子集

换言之,URL和URN都是URI,但是URI不一定是URL或者URN。为了更好的理解这个概念,看下面这张图片。

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

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

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

 
URL代表资源的路径地址,而URI代表资源的名称。
通过URL找到资源是对网络位置进行标识,如:

  • http://example.org/absolute/URI/with/absolute/path/to/resource.txt
  • ftp://example.org/resource.txt

通过URI找到资源是通过对名称进行标识,这个名称在某命名空间中,并不代表网络地址,如:

  • urn:issn:1535-3613

原来URI包括URL和URN,后来URN没流行起来,导致几乎目前所有的URI都是URL

最新文章

  1. mysql集群(双主)
  2. Extjs5 tree扩展----treepanel树组件
  3. memcache的内存管理探微
  4. 关于WebBrowser访问百度地图
  5. 【2016-10-17】【坚持学习】【Day8】【抽象工厂模式】
  6. Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime
  7. rqnoj378 约会计划
  8. task9暂存
  9. js 默认选中分页条件项
  10. Spring学习4-面向切面(AOP)之aspectj注解方式
  11. 3D动画效果照片墙demo
  12. 【前端】用jQuery实现瀑布流效果
  13. Spring-boot使用eclipse搭建项目(一)
  14. poj2449 第k短路
  15. 网卡最大传输单位MTU和巨型帧(Jumbo frame)设置
  16. error: C++ preprocessor "/lib/cpp" fails sanity check错误解决方法
  17. Luogu P1273 有线电视网
  18. 对linux内核中jiffies+Hz表示一秒钟的理解
  19. 在openerp撰写消息中增加图片
  20. Sql Server数据库备份脚本以及如何在阿里云云数据库RDS还原数据库(代码源自阿里云)

热门文章

  1. 启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块
  2. POJ2531——Network Saboteur(随机化算法水一发)
  3. String.IndexOf String.IndexOf String.Substring
  4. C语言中的位拷贝与值拷贝浅谈(转载)
  5. bzoj1293
  6. Linux 根文件系统制作
  7. Linux sysfs device_attribute
  8. acdream 小晴天老师系列——晴天的后花园 (暴力+剪枝)
  9. 我个人有关 Azure 网络 SLA、带宽、延迟、性能、SLB、DNS、DMZ、VNET、IPv6 等的 Azure 常见问题解答
  10. Java [leetcode 28]Implement strStr()