---恢复内容开始---

参考

https://zh.wikipedia.org/wiki/%E7%BB%9F%E4%B8%80%E8%B5%84%E6%BA%90%E6%A0%87%E5%BF%97%E7%AC%A6

http://www.jianshu.com/p/33bc363290e9

https://danielmiessler.com/study/url-uri/#gs.K9LKEHw

http://blog.gejiawen.com/2015/09/14/different-between-url-and-uri/

OverView

URI(Uniform Resource Identifier) 是一个用于标识一个互联网资源名称的字符串。URI的最常见形式就是URL(统一资源定位符)。

URI和URL和URN

首先看一下三者的名称

  • URI(统一资源标识符 Uniform Resource Identifier)
  • URL(统一资源定位符 Uniform Resource Locator)
  • URN (统一资源名称 Uniform Resource Name)

URI,URL,URN是一组概念,用于描述了互联网的资源。

  • URI是一种更高层次的抽象的概念,定义了如何去描述一个资源。
  • URL URL是URI的一种,他是一个具体的URI,URL可以唯一的标识个资源,而且可以确定资源的位置。
  • URN 这个用的就比较稀少了,有一个常见的例子 我有两本图书都叫《从入门到精通》但是两个图书的ISBN码是不一样的,ISBN码就像一个图书的唯一的名字,我们通过图书的ISBN码就知道他是哪个图书,他是一个图书的唯一的名字。但是我们是无法通过URN找到该图书在哪里。

从生活的例子上理解

​ 拿一个比较牵强的例子来说吧--【身份证】,从某种意义上,一个身份证唯一的标识出来了一个人,身份证这个唯一的概念就可以看做一个URI。我们身份证中,我的住址就可以看做是一个(URL),因为可以通过,身份证上的地址来准确的找到我(但是并不知道我们的名字);我们身份证中的身份证号,可看做是一个(URN),因为身份证号算是一个的唯一的名字(通过这个名字是不能知道我的位置的)。

从编程的角度理解

​ URI 更像是一个接口(Interface),是一个概念,定义了如何去标识一个资源,而URL和URN就是URI的实现类,定义了标识一个资源的具体的方式。

总结

  • URL 一定是URI,单URI不一定是URL
  • https://www.baidu.com/ 百度的网址,虽然是一个URL但是同时他也是一个URI,用URI来称呼URL更为规范一些(自我认为)

---恢复内容结束---

理解URI的更多相关文章

  1. 理解URI和URL

    1)定义: URI: Uniform Resource Identifier,通用资源标识符 ---是一个用于标识某一互联网资源名称的字符串(by 维基百科) URL:Uniform Resource ...

  2. URL和URI的区别与联系

    转自:http://win7452.blog.51cto.com/147513/45741 今天在看STRUTS配置的时候,发现一个问题,就是在看配置文件的时候,有时出现URL有时又是URI, 让我心 ...

  3. HTTP笔记:URI与URL

    URI与URL 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念.URI = Universal Resource Identifier 统一资源标志符URL = Universal ...

  4. URL与URI的区别和联系

    转自:https://www.cnblogs.com/chengdabelief/p/6635045.html 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念. URI = Uni ...

  5. URL 与URI 的区别

    作者:Octocat链接:https://www.zhihu.com/question/21950864/answer/89835520来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...

  6. Http协议-URI和资源

    所有东西都有一个标准化的名字,以帮助人们寻找城市中的各种资源.书籍有ISBN号,公交车有线路号,银行账户有账户编码,人有身份证,街道有街道名称.人们告诉图书馆管理员书籍的ISBN号,他即可找出该书籍的 ...

  7. DataURL详解--转自格桑blog

    DataURI详解 Posted on 2013 年 09 月 09 日 by admin DataURI,不算新东西,却一直没用过,前些日子在webapp中用了点DataURI,就做了下相关的了解, ...

  8. 使用ContentProvider进行应用程序间的数据交互

    什么是ContentProvider: ContentProvider用来管理数据的访问规则.它允许你的应用程序向外界暴露需要被访问的数据. 是Android的四大组件之一. ContentProvi ...

  9. 阅读 图解HTTP ,读书笔记

    阅读它的目的只有一个:就是想了解客户端与服务端的通信是怎么实现的?    数据的存储是怎么实现的?     数据流通过程中遇到什么问题.返回什么状态.该怎么解决? 网络基础 TCP / IP 通常使用 ...

随机推荐

  1. 【COGS】2287:[HZOI 2015]疯狂的机器人 FFT+卡特兰数+排列组合

    [题意][COGS 2287][HZOI 2015]疯狂的机器人 [算法]FFT+卡特兰数+排列组合 [题解]先考虑一维的情况,支持+1和-1,前缀和不能为负数,就是卡特兰数的形式. 设C(n)表示第 ...

  2. DNS域传送漏洞

    nslookup -type=ptr 8.8.8.8             #查询一个IP地址对应的域名 nslookup -type=ns baidu.com         #查询baidu.c ...

  3. 文件操作fstream

    c++文件操作详解 2009-04-16 20:46:35|  分类: C/C++|举报|字号 订阅 C++ 通过以下几个类支持文件的输入输出: ofstream: 写操作(输出)的文件类 (由ost ...

  4. 从零单排Hadoop——1.搭建Hadoop开发环境

    Hadoop环境准备:ubuntu 12.05.Hadoop 2.4 一.安装ssh 由于hadoop可以配置为集群运行,因此系统需要安装ssh工具保证集群中各节点可以互相访问. 获取ssh软件: s ...

  5. 揭秘Patchwork APT攻击-恶意软件样本BADNEWS

    1.前言 在2016年左右研究人员发现一个与东南亚和中国南海问题的APT攻击,该APT攻击利用MS Offcie系列漏洞通过钓鱼邮件的形式欺骗受害者点击木马.以美国在内的各国政府和公司为目标发送了大量 ...

  6. ASP.NET Web Api OwinSelfHost Restful 使用

    一.前言 总结一下什么是RESTful架构: (1)每一个URI代表一种资源: (2)客户端和服务器之间,传递这种资源的某种表现层: (3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现&q ...

  7. python基础--hashlib模块

    hashlib模块用于加密操作,代替了md5和sha模块, 主要提供SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法. # -*- coding:utf-8 - ...

  8. java基础62 JavaScript中的函数(网页知识)

    1.JavaScript中,函数的格式 function 函数名(形参列表){ 函数体; } 2.JavaScript中,函数需要注意的细节 1.在javaScript中,函数定义形参时,是不能使用v ...

  9. 5 个非常有用的 Laravel Blade 指令,你用过哪些?

    接下来我将带大家认识下五个 Laravel Blade 指令,这些指令将让你在解决特定问题时如虎添翼.如果你是刚接触 Laravel 的用户,这些小技巧能带你认识到 Laravel Blade 模板引 ...

  10. mybatis之 # 与 $ 区别以及 sql 预编译

    mybatis 中使用 sqlMap 进行 sql 查询时,经常需要动态传递参数,例如我们需要根据用户的姓名来筛选用户时,sql 如下: select * from user where name = ...