理解URI
---恢复内容开始---
参考
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的更多相关文章
- 理解URI和URL
1)定义: URI: Uniform Resource Identifier,通用资源标识符 ---是一个用于标识某一互联网资源名称的字符串(by 维基百科) URL:Uniform Resource ...
- URL和URI的区别与联系
转自:http://win7452.blog.51cto.com/147513/45741 今天在看STRUTS配置的时候,发现一个问题,就是在看配置文件的时候,有时出现URL有时又是URI, 让我心 ...
- HTTP笔记:URI与URL
URI与URL 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念.URI = Universal Resource Identifier 统一资源标志符URL = Universal ...
- URL与URI的区别和联系
转自:https://www.cnblogs.com/chengdabelief/p/6635045.html 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念. URI = Uni ...
- URL 与URI 的区别
作者:Octocat链接:https://www.zhihu.com/question/21950864/answer/89835520来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
- Http协议-URI和资源
所有东西都有一个标准化的名字,以帮助人们寻找城市中的各种资源.书籍有ISBN号,公交车有线路号,银行账户有账户编码,人有身份证,街道有街道名称.人们告诉图书馆管理员书籍的ISBN号,他即可找出该书籍的 ...
- DataURL详解--转自格桑blog
DataURI详解 Posted on 2013 年 09 月 09 日 by admin DataURI,不算新东西,却一直没用过,前些日子在webapp中用了点DataURI,就做了下相关的了解, ...
- 使用ContentProvider进行应用程序间的数据交互
什么是ContentProvider: ContentProvider用来管理数据的访问规则.它允许你的应用程序向外界暴露需要被访问的数据. 是Android的四大组件之一. ContentProvi ...
- 阅读 图解HTTP ,读书笔记
阅读它的目的只有一个:就是想了解客户端与服务端的通信是怎么实现的? 数据的存储是怎么实现的? 数据流通过程中遇到什么问题.返回什么状态.该怎么解决? 网络基础 TCP / IP 通常使用 ...
随机推荐
- 【COGS】2287:[HZOI 2015]疯狂的机器人 FFT+卡特兰数+排列组合
[题意][COGS 2287][HZOI 2015]疯狂的机器人 [算法]FFT+卡特兰数+排列组合 [题解]先考虑一维的情况,支持+1和-1,前缀和不能为负数,就是卡特兰数的形式. 设C(n)表示第 ...
- DNS域传送漏洞
nslookup -type=ptr 8.8.8.8 #查询一个IP地址对应的域名 nslookup -type=ns baidu.com #查询baidu.c ...
- 文件操作fstream
c++文件操作详解 2009-04-16 20:46:35| 分类: C/C++|举报|字号 订阅 C++ 通过以下几个类支持文件的输入输出: ofstream: 写操作(输出)的文件类 (由ost ...
- 从零单排Hadoop——1.搭建Hadoop开发环境
Hadoop环境准备:ubuntu 12.05.Hadoop 2.4 一.安装ssh 由于hadoop可以配置为集群运行,因此系统需要安装ssh工具保证集群中各节点可以互相访问. 获取ssh软件: s ...
- 揭秘Patchwork APT攻击-恶意软件样本BADNEWS
1.前言 在2016年左右研究人员发现一个与东南亚和中国南海问题的APT攻击,该APT攻击利用MS Offcie系列漏洞通过钓鱼邮件的形式欺骗受害者点击木马.以美国在内的各国政府和公司为目标发送了大量 ...
- ASP.NET Web Api OwinSelfHost Restful 使用
一.前言 总结一下什么是RESTful架构: (1)每一个URI代表一种资源: (2)客户端和服务器之间,传递这种资源的某种表现层: (3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现&q ...
- python基础--hashlib模块
hashlib模块用于加密操作,代替了md5和sha模块, 主要提供SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法. # -*- coding:utf-8 - ...
- java基础62 JavaScript中的函数(网页知识)
1.JavaScript中,函数的格式 function 函数名(形参列表){ 函数体; } 2.JavaScript中,函数需要注意的细节 1.在javaScript中,函数定义形参时,是不能使用v ...
- 5 个非常有用的 Laravel Blade 指令,你用过哪些?
接下来我将带大家认识下五个 Laravel Blade 指令,这些指令将让你在解决特定问题时如虎添翼.如果你是刚接触 Laravel 的用户,这些小技巧能带你认识到 Laravel Blade 模板引 ...
- mybatis之 # 与 $ 区别以及 sql 预编译
mybatis 中使用 sqlMap 进行 sql 查询时,经常需要动态传递参数,例如我们需要根据用户的姓名来筛选用户时,sql 如下: select * from user where name = ...