一个 URL、一个 URI 和一个 URN 的区别是什么?


当前回答

正如我所理解的那样,URI是某事的描述,按照接受的格式,可以定义某事或其位置的独特名称(识别)。

有两个基本子组:

URL,定义位置(特别是试图查看网页的浏览器)和URN,定义某事的独特名称。

我倾向于认为URN类似于GUID,它们只是一个标准化的方法来为事物提供独特的名称,就像在使用公司名称的名称空间声明中一样,它并不像在某个服务器上坐着的资源在某个地方相匹配于该文本线,它只是独特地识别某些东西。

我也倾向于完全避免URI的术语,并讨论事物只有在URL或URN的意义上,因为它会导致如此多的混乱。我们应该真正试图回答问题的人不是那么多的语法,但如何识别当遇到的术语是否有任何实际的差异在他们,这将改变对一个编程情况的方法。

如果我离开基地,请告诉我!

其他回答

答案是双重的,在Java中,它经常以以下方式使用:

统一资源探测器(URL)是用来识别互联网资源的术语,包括方案(http、https、fTP、新闻等)。例如,URI、URL和URN之间的区别是什么?

统一资源识别器(URI)用于在 Web 服务器中识别一个单一文件: 例如 / 问题/176264/whats-the-差异- between-a-uri-and-a-url

在 Java 服务器中, URI 经常提到没有 Web 应用背景的文档。

URL - 统一资源探测器

包含关于如何从其位置获取资源的信息,例如:

URN - 统一资源名称

URC - 统一资源引用


经常提出的问题

我不知道,但现代的网页浏览器正在实施数据URI系统。

URL 和 URI 之间的区别与它是否有查询参数有什么关系?

URL 和 URI 之间的区别与哪些字符有任何关系吗?

没有. URL 被定义为一个严格的 URI 子组. 如果一个字符允许一个字符在一个 URL 但不是一个 URI,有一个错误在一个字符. 特征走到很好的细节,关于哪些字符被允许在哪些部分的 URL 和 URI. 某些字符只能允许在 URL 的某些部分,但字符本身不是 URL 和 URI 的区别。

一个URI可以是URL和URN吗?


此分類上一篇

简而言之:一个 URI 会识别,一个 URL 会识别和找到。

考虑到莎士比亚的游戏罗密欧和朱丽叶的具体版本,你在你的家庭网络上有一个数字副本。

您可以将文本定义为 urn:isbn:0-486-27557-4. 这将是一个 URI,但更具体的是一个 URN* 因为它命名文本。

您也可以将文本定义为 file://hostname/sharename/RomeoAndJuliet.pdf. 这也将是一个 URI,但更具体的是一个URL,因为它会找到文本。

* 统一资源名称

(请注意,我的例子是从维基百科调整的)

从 RFC 3986:

“Uniform Resource Locator”(URL)是指URI的子组,除了识别资源之外,它还提供了通过描述其主要访问机制(例如,其网络的“位置”)来定位资源的手段。

因此,所有URL都是URI,所有URL都是URI,但URL和URL都是不同的,所以你不能说所有URL都是URL。

如果你还没有阅读罗杰·帕特的答案,我会建议你这样做。

正如我所理解的那样,URI是某事的描述,按照接受的格式,可以定义某事或其位置的独特名称(识别)。

有两个基本子组:

URL,定义位置(特别是试图查看网页的浏览器)和URN,定义某事的独特名称。

我倾向于认为URN类似于GUID,它们只是一个标准化的方法来为事物提供独特的名称,就像在使用公司名称的名称空间声明中一样,它并不像在某个服务器上坐着的资源在某个地方相匹配于该文本线,它只是独特地识别某些东西。

我也倾向于完全避免URI的术语,并讨论事物只有在URL或URN的意义上,因为它会导致如此多的混乱。我们应该真正试图回答问题的人不是那么多的语法,但如何识别当遇到的术语是否有任何实际的差异在他们,这将改变对一个编程情况的方法。

如果我离开基地,请告诉我!