一个 URL、一个 URI 和一个 URN 的区别是什么?
当前回答
答案是双重的,在Java中,它经常以以下方式使用:
统一资源探测器(URL)是用来识别互联网资源的术语,包括方案(http、https、fTP、新闻等)。例如,URI、URL和URN之间的区别是什么?
统一资源识别器(URI)用于在 Web 服务器中识别一个单一文件: 例如 / 问题/176264/whats-the-差异- between-a-uri-and-a-url
在 Java 服务器中, URI 经常提到没有 Web 应用背景的文档。
其他回答
根據定義 URL 是 URI 的子集 [RFC2396]. URI 包含 URN 和 URL. 兩個 URI 和 URL 都有自己的特定的合成,這給他們的狀態是 URI 或 URL. URN 是為了獨特地識別一個資源,而 URL 是為了找到一個資源。
作为网页开发人员和程序员,我们将几乎总是关心URL,因此URI. 现在一个URL是具体定义的所有部分图表:图表特定的部分,如 https://stackoverflow.com/问答. 这是一个URL,也是一个URI. 现在考虑一个相对链接嵌入到页面,如../index.html. 这不再是一个URL的定义。
根据 RFC 3986, URI 由以下组成:
scheme://authority/path?query
URI 描述了在服务器(权威)上访问资源(路径)或应用程序(请求)的协议。
此分類上一篇
所有 URL 都是 URI,所有 URN 都是 URI,但所有 URI 不是 URL。
请参见更多详细信息:
维基百科
首先,把你的头脑脱离混乱,把它简单,你会明白。
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 会识别和找到。
考虑到莎士比亚的游戏罗密欧和朱丽叶的具体版本,你在你的家庭网络上有一个数字副本。
您可以将文本定义为 urn:isbn:0-486-27557-4. 这将是一个 URI,但更具体的是一个 URN* 因为它命名文本。
您也可以将文本定义为 file://hostname/sharename/RomeoAndJuliet.pdf. 这也将是一个 URI,但更具体的是一个URL,因为它会找到文本。
* 统一资源名称
(请注意,我的例子是从维基百科调整的)
s3://www-example-com/index.html [图 1]
http://www.example.com/index.html [图 2]
在亚马逊的S3-US-West-2数据中心。
图 1 是 URI 图 1 是 URN 图 2 是 URI 图 2 是 URL 图 1 的 URL 是 http://www-example-com.s3-website-us-west-2.amazonaws.com/ 也是 http://www-example-com.s3.amazonaws.com/index.html 但不是 http://www-example-com.s3.amazonaws.com/ (没有数据中心和没有文件名是亚马逊 S3 太一般的)
推荐文章
- URL中的“#:~:text=”位置哈希值到底是什么?
- 什么是HTTP“主机”报头?
- 哪个HTTP状态代码表示“尚未准备好,稍后再试”?
- 如何从URL获取参数与JSP
- 如何阻止恶意代码欺骗“Origin”报头来利用CORS?
- 从URI获取真实路径,Android奇巧新的存储访问框架
- URL从Java中的类路径加载资源
- 为什么说“HTTP是无状态协议”?
- 我需要HTTP GET请求的内容类型报头吗?
- 单击url会打开默认浏览器
- 我如何得到一个Flask请求的url的不同部分?
- 用JavaScript检测文本中的url
- 如何让Chrome允许混合内容?
- 正确的方式删除cookies服务器端
- REST DELETE真的是幂等的吗?