一个 URL、一个 URI 和一个 URN 的区别是什么?
当前回答
我喜欢在思考URI时使用的另一个例子是XML文件的xmlns属性:
<rootElement xmlns:myPrefix="com.mycompany.mynode">
<myPrefix:aNode>some text</myPrefix:aNode>
</rootElement>
在这种情况下,com.mycompany.mynode 将是一个独特识别“myPrefix”名称空间的 URI 对所有在我的 XML 文档中使用的元素。
其他回答
這些是幾個非常好寫的,但很長的答案. 以下是 CodeIgniter 所涉及的差異:
地址: http://example.com/some/page.html
URI - /some/page.html
简单地说,URL是识别任何资源的完整方式,并且可以有不同的协议,如FTP、HTTP、SCP等。
URI 是当前域的资源,因此需要找到更少的信息。
在每个例子中,CodeIgniter使用这个词URL或URI,这是他们正在谈论的差异,尽管在网格的格式中,它不是100%正确的。
虽然 URI 和 URL 术语是严格定义的,但许多人使用这些术语的其他事物,而不是它们的定义。
如果从 Apache 服务器要求 http://example.com/foo,您将设置以下环境变量:
REDIRECT_URL: /foo REQUEST_URI: /foo
使用 mod_rewrite 启用,您还将有以下变量:
REDIRECT_SCRIPT_URL: /foo REDIRECT_SCRIPT_URI: http://example.com/foo SCRIPT_URL: /foo SCRIPT_URI: http://example.com/foo
这可能是某些混乱的原因。
答案是双重的,在Java中,它经常以以下方式使用:
统一资源探测器(URL)是用来识别互联网资源的术语,包括方案(http、https、fTP、新闻等)。例如,URI、URL和URN之间的区别是什么?
统一资源识别器(URI)用于在 Web 服务器中识别一个单一文件: 例如 / 问题/176264/whats-the-差异- between-a-uri-and-a-url
在 Java 服务器中, URI 经常提到没有 Web 应用背景的文档。
一个 URI 通过位置或名称识别一个资源,或者两者。 更常见的是,我们大多数人使用定义一个资源的位置的 URI. 事实上,一个 URI 可以通过名称和位置识别一个资源,在我看来导致了很多混乱。
URL 是 URI 的专业化,它定义了一个特定的资源的网络位置. 与 URN 不同,URL 定义了资源可以获得的方式. 我们每天使用 URL 以 http://stackoverflow.com 等的形式,但一个 URL 不必是一个 HTTP URL,它可以是 ftp://example.com 等。
维基百科将提供您所需的所有信息。 引用来自 http://en.wikipedia.org/wiki/URI:
URL 是一個 URI,除了識別資源之外,還提供行動或獲得資源的代表性的手段,描述其主要接入機制或網路「位置」。
推荐文章
- 什么是HTTP“主机”报头?
- 哪个HTTP状态代码表示“尚未准备好,稍后再试”?
- 如何从URL获取参数与JSP
- 如何阻止恶意代码欺骗“Origin”报头来利用CORS?
- 从URI获取真实路径,Android奇巧新的存储访问框架
- URL从Java中的类路径加载资源
- 为什么说“HTTP是无状态协议”?
- 我需要HTTP GET请求的内容类型报头吗?
- 单击url会打开默认浏览器
- 我如何得到一个Flask请求的url的不同部分?
- 用JavaScript检测文本中的url
- 如何让Chrome允许混合内容?
- 正确的方式删除cookies服务器端
- REST DELETE真的是幂等的吗?
- 如何使用jQuery从URL中获得锚?