`
gongmingwind
  • 浏览: 576558 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

URI、URL和URN之间的区别与联系

阅读更多
URI:Uniform Resource Identifier,统一资源标识符;
URL:Uniform Resource Locator,统一资源定位符;
URN:Uniform Resource Name,统一资源名称。
其中,URL,URN是URI的子集。
Web上地址的基本形式是URI,它代表统一资源标识符。有两种形式:
URL:目前URI的最普遍形式就是无处不在的URL或统一资源定位器。
URN:URL的一种更新形式,统一资源名称(URN, Uniform Resource Name)不依赖于位置,并且有可能减少失效连接的个数。但是其流行还需假以时日,因为它需要更精密软件的支持。
URI是以某种统一的(标准化的)方式标识资源的简单字符串。
URI一般由三部分组成:
1. 访问资源的命名机制。
2. 存放资源的主机名。
3. 资源自身的名称,由路径表示。
典型情况下,这种字符串以scheme(命名URI的名字空间的标识符——一组相关的名称)开头,语法如下:
[scheme:] scheme-specific-part
URI以scheme和冒号开头。Scheme用大写/小写字母开头,后面为空或者跟着更多的大写/小写字母、数字、加号、减号和点号。冒号把scheme与scheme-specific-part分开了,并且scheme-specific-part的语法和语义(意思)由URI的名字空间决定。如下面的例子:
http://www.cnn.com,其中http是scheme,//www.cnn.com是 scheme-specific-part,并且它的scheme与scheme-specific-part被冒号分开了。
URI有绝对和相对之分,绝对的URI指以scheme(后面跟着冒号)开头的URI。前面提到的http://www.cnn.com就是绝对的URI的一个例子,其它的例子还有mailto:jeff@javajeff.com、news:comp.lang.java.help和xyz://whatever。你可以把绝对的URI看作是以某种方式引用某种资源,而这种方式对标识符出现的环境没有依赖。如果使用文件系统作类比,绝对的URI类似于从根目录开始的某个文件的径。
与绝对的URI不同的,相对的URI不是以scheme(后面跟着冒号)开始的URI。 它的一个例子是articles/articles.html。你可以把相对的URI看作是以某种方式引用某种资源,而这种方式依赖于标识符出现的环境。如果用文件系统作类比,相对的URI类似于从当前目录开始的文件路径。

URL是Uniform Resource Location的缩写,译为"统一资源定位符"。通俗地说,URL是Internet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,特别是著名的Mosaic。采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。
URL的格式由下列三部分组成:
第一部分是协议(或称为服务方式);
第二部分是存有该资源的主机IP地址(有时也包括端口号);
第三部分是主机资源的具体地址。,如目录和文件名等。
第一部分和第二部分之间用"://"符号隔开,第二部分和第三部分用"/"符号隔开。第一部分和第二部分是不可缺少的,第三部分有时可以省略。
目前最大的缺点是当信息资源的存放地点发生变化时,必须对URL作相应的改变。因此人们正在研究新的信息资源表示方法,例如:URI(Universal Resource Identifier)即"通用资源标识"(参见RFC 1630)、URN(Uniform Resource Name)即"统一资源名"和URC(Uniform Resource Citation)即"统一资源引用符"等。
URI目前还处在进一步的研究当中。研究的方向就是弥补URL目前存在的缺点。
分享到:
评论

相关推荐

    URI和URL的区别

    二、URI和URL的区别及关系 简而言之,URI是标识某一个资源,而URL用位置来标识一个资源。 一、URI、URL和URN Web上地址的基本形式是URI,它有多种形式:常见的有URL和URN。 URI = Universal Resource Identifier ...

    关于URI和URN,URL和java中对应的类.pdf

    ...

    关于URI和URN,URL和java中对应的类.docx

    ...

    Java网络编程之URI、UR

    URI、URL和URN是识别、定位和命名互联网上的资源的标准途径。本文分析了URI、URL和URN和Java API的URI和URL类

    URI (Java Platform SE 8 )

    Java 8 documentation for class URI, a good reference for recapping the concepts and use cases of URI/URL/URN.

    JavaWeb编程技术参考答案

     URI是URL和URN的超集。  3. 答:①是URL,①和②都是URI,③是URN  4. 答:动态Web文档技术包括服务器端动态文档技术和客户端动态文档技术,前者包括CGI技术、服务器扩展技术和HTML页面中嵌入脚本技术。其中HTML...

    provenance-log-specifications:真实数据源日志格式,URN和URL的规范

    该项目管理真实数据源日志及其相关的URN,URL和协议的一组规范。 它是通过开发的来指定的,该是受和启发。 这些标准从 , , 和先前工作中获得了很多启发。 这是多年学习和研究的高潮,由于创建和发展了自主权身份...

    java获取路径的各种方法

    另外关于URI,URL,URN等内容,请参考RFC相关文档标准。RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,(http://www.ietf.org/rfc/rfc2396.txt)2.关于JSP/Servlet中的相对路径和绝对路径。2.1服务器...

    面向资源的架构:REST的另一面.doc

    讨论了REST架构,SOAP与WS-*,语义网,URL作为ID,URI以及URN,自由形式的,逻辑连接的延迟绑定系统,HATEOAS以及语义网带来的影响。

    leetcode分类--:——

    URI分为URL和URN,主要使用URL,URN还处于实验阶段 URL分为三部分: 第一部分为方案,说明了访问资源所使用的协议类型。HTTP协议 第二部分给出了服务器的因特网地址 其余部分指定了web服务器上的某个资源 9月29日 ...

    HTML开发王

    7.2.3 区分uri、url和urn 7.2.4 区分本地链接和服务器链接 7.3 使用a元素定义链接 7.3.1 定义链接的目标uri(href属性) 7.3.2 定义链接的目标窗口(target属性) 7.3.3 定义链接的提示信息(title属性) 7.3.4 国际化和...

    什么是磁力链接?如何用Python获取磁力种子?

    磁力链接,也被称为Magnet URI scheme,是一种在对等网络中进行信息检索和下载文档的电脑程序。这种链接机制与基于“位置”连接的统一资源定位符(URL)是不同的,因为磁力链接是基于元数据进行的。 磁力链接是由一...

    高级java笔试题-awesome-http:HTTP、HTTP缓存、CORS、HTTPS、HTTP/2、Fiddler、WireShark、

    URI的最常见的形式是(URL),经常指定为非正式的网址。更罕见的用法是(URN),其目的是通过提供一种途径。用于在特定的资源的标识,以补充网址。—— 维基百科 URI 文法 URI文法由名(例如“”,“”,“”或...

    trakt.tv:用于Node.js的Trakt.tv API包装器

    trakt.tv 用于Node.js的Trakt.tv API包装器,具有:...let options = { client_id : < the> , client_secret: < the> , redirect_uri: null, // defaults to 'urn:ietf:wg:oauth:2.0:oob' api_url: null, // default

Global site tag (gtag.js) - Google Analytics