`

URI和URL的区别比较与理解

 
阅读更多

一、URI

<1>什么是URI

URI,统一资源标志符(Uniform Resource Identifier, URI),表示的是web上每一种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个URI进行标识的。

<2>URI的结构组成

URI通常由三部分组成:

①资源的命名机制;

②存放资源的主机名;

③资源自身的名称。

(注意:这只是一般URI资源的命名方式,只要是可以唯一标识资源的都被称为URI,上面三条合在一起是URI的充分不必要条件)

<3>URI举例

如:https://blog.csdn.net/qq_32595453/article/details/79516787

我们可以这样解释它:

①这是一个可以通过https协议访问的资源,

②位于主机 blog.csdn.net上,

③通过“/qq_32595453/article/details/79516787”可以对该资源进行唯一标识(注意,这个不一定是完整的路径)

注意:以上三点只不过是对实例的解释,以上三点并不是URI的必要条件,URI只是一种概念,怎样实现无所谓,只要它唯一标识一个资源就可以了。

二、URL

URL是URI的一个子集。它是Uniform Resource Locator的缩写,译为“统一资源定位 符”。

通俗地说,URL是Internet上描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上。

采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。URL是URI概念的一种实现方式。

URL的一般格式为(带方括号[]的为可选项):

protocol :// hostname[:port] / path / [;parameters][?query]#fragment

URL的格式由三部分组成: 

①第一部分是协议(或称为服务方式)。

②第二部分是存有该资源的主机IP地址(有时也包括端口号)。

③第三部分是主机资源的具体地址,如目录和文件名等。

第一部分和第二部分用“://”符号隔开,

第二部分和第三部分用“/”符号隔开。

第一部分和第二部分是不可缺少的,第三部分有时可以省略。 

三、URI和URL之间的区别

从上面的例子来看,你可能觉得URI和URL可能是相同的概念,其实并不是,URI和URL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集,它不仅唯一标识资源,而且还提供了定位该资源的信息。URI 是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。

 

--------------------------------------------

更新:看了一下大家的疑问,其实大家对uri可以认为只是唯一识别的编号,类似于大家的身份证号,而url就是身份证住址+姓名,这样是不是就很明显了~~

 

更新2:针对大部分同学的疑问,其实纠结的就是URI到底是什么,怎么它就是URI不是URL了,其实文章中都已交代,只要能唯一标识资源的就是URI,在URI的基础上给出其资源的访问方式的就是URL,这是最简单的总结了,希望对大家有所帮助,祝好~~

 

文章来源:https://blog.csdn.net/qq_32595453/article/details/80563142

分享到:
评论

相关推荐

    URI和URL区别 .

    在探讨“URI和URL区别”这一主题时,我们首先需要明确这两个概念的基本定义与功能,进而深入理解它们之间的差异以及在互联网技术中的具体应用。URI(Uniform Resource Identifier,统一资源标识符)和URL(Uniform ...

    URI,URL常识

    #### 三、URI与URL之间的区别及联系 - **区别**: - **URI**是对资源的标识,不提供如何访问该资源的信息。 - **URL**是一种特殊的URI,不仅标识资源,还提供访问资源的方法。 - **URN**(Uniform Resource Name...

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

    URI(Universal Resource Identifier)是统一资源标识,是互联网上资源的一种标准化标识方式,它能够唯一地标识任何资源,包括网页、图片、...在Java编程中,理解这些概念并正确使用URI和URL类,对于网络编程至关重要。

    解析URI与URL之间的区别与联系

    总的来说,理解和区分URI与URL对于理解和开发Web应用程序至关重要。在编程或配置网络服务时,正确使用这两个概念能够确保资源的准确定位和访问。例如,在STRUTS配置文件中,URI可能用来定义一个动作或者资源的标识,...

    URL和URI使用指南

    ### URL和URI使用指南 #### 一、引言 在当今互联网时代,了解如何通过URL(Uniform Resource Locator,统一资源定位符)和URI(Uniform Resource Identifier,统一资源标识符)来获取网络上的数据至关重要。本指南...

    博客《Uri详解之——Uri结构与代码提取》对应源码

    这个博客《Uri详解之——Uri结构与代码提取》的源码提供了深入理解Uri类的实例和实践,有助于开发者更好地理解和操作Uri。下面将详细探讨Uri的相关知识点。 1. **Uri基本概念**: Uri,全称Uniform Resource ...

    uriparser-0.7.7.zip

    `uriparser` 是一个开源的URI(统一资源标识符)解析库,广泛应用于软件开发,尤其是网络爬虫...同时,由于`uriparser`遵循了标准,所以它在处理不同格式和结构的URL时表现得更加可靠,减少了因URL解析问题引发的错误。

    REST URI(URL是其子类)命名规范.zip_子类构造方法

    URL(统一资源定位符)是URI的一个子类,主要用于定位网络资源。 1. **URI中不应包含动词** 在RESTful设计中,URI应该代表资源,而不是操作。动词通常属于HTTP方法(GET、POST、PUT、DELETE等)。例如,一个错误的...

    WSDL URI 代码解析

    WSDL URI,即WSDL文件的统一资源标识符,是访问和理解Web服务的关键。 在本文中,我们将深入探讨如何解析WSDL URI,并通过源码分析来理解其工作原理。我们将以`ServerCreator.java`这个文件作为示例,它很可能是一...

    .net c#URL加密

    4. URL解密:解密过程与加密相反,首先使用Uri.UnescapeDataString解码Base64字符串,然后使用相同的密钥和IV进行解密。 四、安全注意事项 1. 密钥管理:密钥和初始化向量(IV)必须安全存储,避免被泄露。可以...

    PHP获取当前url路径的函数及服务器变量QUERY_STRING、REQUEST_URI

    $temp = urldecode($_SERVER['REQUEST_URI']); if (strexists($temp, ') || strexists($temp, '"')) { $_GET = htmlspecialchars($_GET); // XSS防护 } } ``` 3. **其他相关变量**: - `$_SERVER['DOCUMENT_...

    浅析什么是URI

    URI作为互联网的基础概念之一,是理解和使用互联网资源的关键。无论是开发者还是普通用户,了解URI的基本概念及其组成都是非常重要的。随着技术的发展,URI也在不断地演变和发展,但它始终保持着其核心功能——为...

    C#利用System.Uri转URL为绝对地址的方法

    System.Uri类也提供了这些功能,如`Uri.EscapeDataString()`和`Uri.UnescapeDataString()`方法用于URL编码和解码,以及`Uri.IsLoopback`、`Uri.HostNameType`等属性用于判断URL的特性。 总的来说,通过System.Uri类...

    url和uri区别

    URI(Uniform Resource Identifier)和URL(Uniform Resource Locator)是互联网上资源定位的两种重要概念,它们之间存在着密切的关系,但又有明显的区别。 URI是统一资源标识符,它是一个全局唯一的字符串,用于...

    Ajax uri 乱码问题总结

    总结来说,解决Ajax URI乱码问题的关键在于理解和匹配浏览器的编码行为,并在服务器端进行相应的配置。通过以上策略,可以有效地解决大部分浏览器的乱码问题,实现更好的跨浏览器兼容性。然而,对于特定情况,可能还...

    Java网络编程之URI、UR

    理解它们的区别和使用方法是构建网络应用程序的基础。`java.net`包提供的`URI`和`URL`类为开发人员提供了方便的接口来处理这些标识符,而`URLConnection`则负责实际的网络通信。掌握这些概念和API,将有助于在开发...

    delphi richedit中的URL加下划线

    总的来说,Delphi中的RichEdit控件虽然不直接支持超链接,但通过自定义事件处理,我们可以实现类似的功能,包括URL的下划线显示和点击后在浏览器中打开。这需要对Delphi的消息机制、字符格式控制以及字符串处理有...

    探究dataURI中使用SVG正确姿势

    在JavaScript中,我们可以使用Blob对象和URL.createObjectURL方法将SVG转换为dataURI,这对于动态生成SVG或在运行时修改SVG非常有用。以下是一个简单的示例: ```javascript let svgString = '...

    Data URI浅析

    通过理解其基本结构和组成部分,开发者可以根据具体需求灵活应用Data URI,以实现更好的用户体验。在实际应用中,合理选择是否使用Base64编码,以及注意文件大小限制,都是开发过程中需要注意的关键点。

Global site tag (gtag.js) - Google Analytics