683 字
3 分钟
Uri / Url
2024-11-20

URI(统一资源标识符,Uniform Resource Identifier)和 URL(统一资源定位符,Uniform Resource Locator)是两个密切相关但有区别的概念。它们的区别可以从以下几个方面来理解:

1. 定义#

  • URI:URI 是一个字符串,用于唯一标识互联网上的某个资源。它可以通过名称、位置或其他识别信息来标识资源。
  • URL:URL 是 URI 的一个子集,专门用于指定资源的位置,并提供如何访问该资源的方式。

2. 主要功能#

  • URI:侧重于标识资源,可以是通过名称(URN, Uniform Resource Name)或位置(URL)来标识。URI 包含了 URL 和 URN 两种形式。
  • URL:不仅标识资源,还明确了如何通过特定协议(如 HTTP、FTP 等)来访问该资源。

3. 组成部分#

  • URI 通常由以下几部分组成:

    • scheme(方案):用于指定访问资源的协议或命名机制,例如 httpmailtourn 等。
    • authority(权限):可选部分,包含主机名和端口号。
    • path(路径):标识资源在主机上的位置。
    • query(查询):附加的查询参数,用于进一步指定资源。
    • fragment(片段):用于指向资源中的某个部分。
  • URL 则是 URI 的一种具体形式,通常包括:

    • 协议(如 http://https://
    • 主机名或 IP 地址
    • 可选的端口号
    • 路径、查询参数和片段

4. 举例#

  • URI 示例

    • mailto:[email protected]:这是一个 URI,但不是 URL,因为它没有提供如何在网络上定位这个邮箱地址。
    • urn:isbn:0451450523:这是一个 URN,用于唯一标识一本书,但并没有提供如何获取这本书的位置。
  • URL 示例

    • http://www.example.com/index.html:这是一个 URL,它不仅标识了一个网页,还提供了通过 HTTP 协议访问该网页的方式。

5. 区别总结#

  • 每个 URL 都是 URI,但并非每个 URI 都是 URL。URL 是通过网络位置来标识资源的 URI,而 URI 可以通过其他方式(如名称)来标识资源,不一定涉及网络位置。
  • URI 强调的是“标识”,它可以是通过名称、位置或其他方式;而 URL 强调的是“定位”,即如何找到并访问这个资源。

6. 实际应用#

在编程和网络开发中,通常使用 URL 来描述网页地址或 API 接口,而 URI 则是更广泛的概念,涵盖了所有能够唯一标识网络资源的字符串。

总结来说,URL 是 URI 的一种具体实现形式,用于描述如何通过网络协议获取某个特定的资源,而 URI 则是一个更高层次的抽象概念,用于唯一标识任何互联网资源。

Uri / Url
https://blog.lpkt.cn/posts/uri-url/
作者
lollipopkit
发布于
2024-11-20
许可协议
CC BY-NC-SA 4.0