一个 URL、一个 URI 和一个 URN 的区别是什么?
当前回答
根据 RFC 3986, URI 由以下组成:
scheme://authority/path?query
URI 描述了在服务器(权威)上访问资源(路径)或应用程序(请求)的协议。
此分類上一篇
所有 URL 都是 URI,所有 URN 都是 URI,但所有 URI 不是 URL。
请参见更多详细信息:
维基百科
其他回答
正如我所理解的那样,URI是某事的描述,按照接受的格式,可以定义某事或其位置的独特名称(识别)。
有两个基本子组:
URL,定义位置(特别是试图查看网页的浏览器)和URN,定义某事的独特名称。
我倾向于认为URN类似于GUID,它们只是一个标准化的方法来为事物提供独特的名称,就像在使用公司名称的名称空间声明中一样,它并不像在某个服务器上坐着的资源在某个地方相匹配于该文本线,它只是独特地识别某些东西。
我也倾向于完全避免URI的术语,并讨论事物只有在URL或URN的意义上,因为它会导致如此多的混乱。我们应该真正试图回答问题的人不是那么多的语法,但如何识别当遇到的术语是否有任何实际的差异在他们,这将改变对一个编程情况的方法。
如果我离开基地,请告诉我!
首先,把你的头脑脱离混乱,把它简单,你会明白。
URI => 统一资源识别器 识别一个完整的资源地址 i-e 位置,名称或两者。
URL => Uniform Resource Locator 指定资源的位置。
URN => 统一资源名称 识别资源名称
例子
我们有一个地址 https://www.google.com/folder/page.html 在哪里,
URI(统一资源识别器) => https://www.google.com/folder/page.html
URL(Uniform Resource Locator) => https://www.google.com/
URN(统一资源名称) => /folder/page.html
URI => (URL + URN) 或 URL 仅或 URN 仅
易于解释:
假设下列
URI 是你的名字
URL 是您的地址,您的姓名在订单中与您沟通。
我的名字是 Loyola Loyola 是 URI 我的地址是 TN, Chennai 600001.
TN, Chennai 600 001, Loyola 是 URL
希望你明白,
让我们来看看一个准确的例子。
HTTP://www.google.com/fistpage.html
在上述情况下,您可以使用下面的 http://www.google.com/fistpage.html(URL)联系一个名为 firstpage.html(URI)的页面。
因此,URI是URL的子组,而不是相反。
URI类似于URL和URN的超级类,维基百科有一个关于它们的好文章,链接到正确的RFC集。
根据 RFC 3986, URI 由以下组成:
scheme://authority/path?query
URI 描述了在服务器(权威)上访问资源(路径)或应用程序(请求)的协议。
此分類上一篇
所有 URL 都是 URI,所有 URN 都是 URI,但所有 URI 不是 URL。
请参见更多详细信息:
维基百科
推荐文章
- URL从Java中的类路径加载资源
- 为什么说“HTTP是无状态协议”?
- 我需要HTTP GET请求的内容类型报头吗?
- 单击url会打开默认浏览器
- 我如何得到一个Flask请求的url的不同部分?
- 用JavaScript检测文本中的url
- 如何让Chrome允许混合内容?
- 正确的方式删除cookies服务器端
- REST DELETE真的是幂等的吗?
- 如何使用jQuery从URL中获得锚?
- 了解Chrome网络日志“停滞”状态
- 用户代理字符串可以有多大?
- 什么是接受* HTTP报头q=0.5 ?
- HTTP状态码200(缓存)和状态码304之间有什么区别?
- HTTP POST返回错误:417“期望失败。”