注:1. 仅从http(Hypertext Transfer Portocol)角度阐述,不涉及语言层面的类库。

2. 以下内容均参考《Http权威指南》一书。

一、万维网构成

       Web内容都是存储在Web服务器上的。Web服务器所使用的是HTTP 协议,因此经常会被称为HTTP服务器。这些HTTP 服务器存储了因特网中的数据,如果HTTP 客户端发出请求的话,它们会提供数据。客户端向服务器发送HTTP 请求,服务器会在HTTP 响应中回送所请求的数据,参看下图:

HTTP请求向Web服务器请求资源,也就是说Web服务器是Web 资源(Web resource)的宿主。那么Web资源的种类自然繁多,如:文本文件、Word文件、音频、视频等等静态资源以及许多动态资源。

那么接下来就要引出我们的问题了,上面说了Web客户端向Web服务器请求资源,请求的时候总要写明,去请求哪台Web服务器以及Web服务器上面的资源地址。

二、URI、URL、URN

       每个Web 服务器资源都有一个名字,这样客户端就可以说明它们感兴趣的资源是什么了。服务器资源名被称为统一资源标识符(Uniform Resource Identifier,URI)。URI 就像因特网上的邮政地址一样,在世界范围内唯一标识并定位信息资源。
 
     上图显示了URI 是怎样指示HTTP 协议去访问Joe 商店服务器上的图片资源的。给定了URI,HTTP 就可以解析出对象。URI 有两种形式,分别称为URL 和URN。 
 

统一资源定位符(URL)是资源标识符最常见的形式。URL 描述了一台特定服务器上某资源的特定位置。它们可以明确说明如何从一个精确、固定的位置获取资源。

大部分URL 都遵循一种标准格式,这种格式包含三个部分。

  1. URL 的第一部分被称为方案(scheme),说明了访问资源所使用的协议类型。这部分通常就是HTTP 协议(http://)。
  2. 第二部分给出了服务器的因特网地址(比如,www.joes-hardware.com)。
  3. 其余部分指定了Web 服务器上的某个资源(比如,/specials/saw-blade.gif)。

     现在,几乎所有的URI 都是URL。

URI 的第二种形式就是统一资源名(URN)。URN 是作为特定内容的唯一名称使用的,与目前的资源所在地无关。使用这些与位置无关的URN,就可以将资源四处搬移。通过URN,还可以用同一个名字通过多种网络访问协议来访问资源。比如,不论因特网标准文档RFC 2141 位于何处(甚至可以将其复制到多个地方),都可以用下列URN 来命名它:    urn:ietf:rfc:2141
         URN 仍然处于试验阶段,还未大范围使用。为了更有效地工作,URN需要一个支撑架构来解析资源的位置。

URI、URL、URN介绍的更多相关文章

  1. 关于URI URL URN

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

  2. uri,url.urn

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

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

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

  4. URI/URL/URN的联系和区别

    下面是我整理的一些关于他们的描述. URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源. 而URL是uniform resource locato ...

  5. URI URL URN 关系

    我们一起来看下面这个虚构的例子.这是一个URI: http://bitpoetry.io/posts/hello.html#intro 我们开始分析 http:// 是定义如何访问资源的方式.另外 b ...

  6. URI URL URN的区别

    一:什么是URI,URL,URN ? URI:Uniform Resource Identifier,统一资源标识符,是一个用于表示互联网上资源名称的字符串 格式:http://www.xxx.com ...

  7. URI/URL/URN都是什么

    URI : Uniform Resource Identifier,统一资源标志符 URL : Universal Resource Locator,统一资源定位符 URN : Universal R ...

  8. URI, URL, and URN

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

  9. URI与URN与URL详解

    当没有URI时 什么是URI和URN和URL URI详解 Uniform Resource Identifier 统一资源标识符 URI的组成 案例: https://tools.ietf.org/h ...

  10. URL与URI与URN的区别与联系

    1.什么是URL? 统一资源定位符(或称统一资源定位器/定位地址.URL地址等[1],英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址(网址).如同在网 ...

随机推荐

  1. 设为首页 和 收藏本站js代码 兼容IE,chrome,ff

    设为首页 和 收藏本站js代码 兼容IE,chrome,ff //设为首页 function SetHome(obj,url){ try{ obj.style.behavior='url(#defau ...

  2. PHP的学习--PHP的闭包

    php的闭包(Closure)也就是匿名函数,是PHP5.3引入的. 闭包的语法很简单,需要注意的关键字就只有use,use是连接闭包和外界变量. $a = function() use($b) {} ...

  3. Project简介

    Microsoft Project (Project)是一个国际上享有盛誉的通用的项目管理工具软件,凝集了许多成熟的项目管理现代理论和方法,可以帮助项目管理者实现时间.资源.成本的计划.控制,协助项目 ...

  4. 可视化(番外篇)——在Eclipse RCP中玩转OpenGL

    最近在看有关Eclipse RCP方面的东西,鉴于Gephi是使用opengl作为绘图引擎,所以,萌生了在Eclipse RCP下添加画布,使用opengl绘图的想法,网上有博文详细介绍这方面的内容, ...

  5. resin4的初次配置与使用

    之前用的resin3,结果发布新项目老师文件冲突,我也找不到是哪里有问题,于是尝试使用resin4. 首先从官网下载最新resin4. 然后放到opt下,tar -zvxf 解压. 然后修改conf/ ...

  6. 【转】Xml序列化

    XML序列化是将对象的公共属性和字段转换为XML格式,以便存储或传输的过程.反序列化则是从XML输出中重新创建原始状态的对象.XML序列化中最主要的类是XmlSerializer类.它的最重要的方法是 ...

  7. 从客户端中检测到有潜在危险的 Request.Form 值 --MVC

    可以在处理Post方法的Action添加一个特性: [ValidateInput(false)],这样处理就更加有针对性,提高页面的安全性. 如: [HttpPost][ValidateInput(f ...

  8. js Date 时间格式化的扩展

    js Date 时间格式化的扩展: Date.prototype.format = function (fmt) { var o = { , //月 "d+": this.getD ...

  9. Firemonkey TEdit 切换不同 KeyboardType 样式

    用代码切换 Edit 不同的键盘样式: procedure TForm1.Button1Click(Sender: TObject); begin Edit1.KeyboardType := TVir ...

  10. 以Unix之名

    即便有了MBP,有时,还是想把MBP装上一个Linux发行版,因为习惯了Linux下的折腾. 但每次想要动手安装时,都会告诉自己,MacOS是很纯正的Unix系统,这样,内心的冲动就可以再多压一压. ...