[转载]URI、 URL 和 URN 的区别
1. URI
URI = Universal Resource Identifier 统一资源标志符
URI采用一种特定语法标识一个资源的字符串。所标识的资源可能是服务器上的一个文件。不过,也可能是一个邮件地址、新闻消息、图书、人名、Internet主机或者任何其它内容。
通过URI找到资源是通过对名称进行标识,这个名称在某命名空间中,并不代表网络地址。
它包含URL和URN。
支持的协议有http、https、ftp、mailto、magnet、telnet、data、file、nfs、gopher、ldap等
java还大量使用了一些非标准的定制模式,如rmi,jar、jndi和doc,来实现各种不同用途。
2. URL
URL = Universal Resource Locator 统一资源定位符
URL唯一地标识一个资源在Internet上的位置。不管用什么方法表示,只要能定位一个资源,就叫URL。
示例:
http://www.jianshu.com/u/1f0067e24ff8
ftp://www.example.com/resource.txt
3. URN
URN = Universal Resource Name 统一资源名称
URN它命名资源但不指定如何定位资源,比如:只告诉你一个人的姓名,不告诉你这个人在哪。例如:telnet、mailto、news 和 isbn URI 等都是URN。
比如 urn:issn:1535-3613 则不属于URL(统一资源定位符),因为根据该标识符无法定位任何到资源。
示例:
urn:issn:1535-3613 (国际标准期刊编号)
urn:isbn:9787115318893 (国际标准图书编号)
mailto:jijs@jianshu.com (简单邮件传输协议)
tel:+1-81-555-1212
URI、URL和URN区别
- URI 指的是一个资源
- URL 用地址定位一个资源;
- URN 用名称定位一个资源。
举个例子:
去寻找一个具体的人(URI);如果用地址:XX省XX市XX区...XX单元XX室的主人 就是URL;如果用身份证号+名字去找就是URN(身份证号+名字 无法确认资源的地址) 。
在Java类库中,URI类不包含任何访问资源的方法,只能标识资源。URL类可以访问资源,可以获取指定资源的流信息。
URL格式

1. 协议
指定使用的传输协议,如:http、https、ftp等
2. 登录信息
可选,指用户名和密码作为从服务器端获取资源时必要的登录信息(身份认证)。
3. 服务器地址
可以是域名www.jianshu.com,也可以是ip:192.168.1.10
4. 服务器端口
可选,指定服务器连接的网络端口。,若省略则使用该协议的默认端口。
5. 文件路径
指定服务器上的路径来定位指定的资源。
6. 参数:
可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开。
7. 片段:
可选,片段用于指定网络资源中的片断。html页面中片段则是描点。例如一个网页中有多个名词解释,可使用片段可直接定位到某一名词解释(描点的位置)。
作者:jijs
链接:https://www.jianshu.com/p/09ac6fc0f8cb
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
[转载]URI、 URL 和 URN 的区别的更多相关文章
- HTTP系列(一)URI、URL、URN的区别
1.URI.URL.URN关系图 1)URI Uniform Resource Identifier 统一资源标识符 每个web服务器资源都有一个名字,服务器资源名被统称为统一资源标识符:URI就像 ...
- URI、URL以及URN的区别
首先,URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源.而URL是uniform resource locator,统一资源定位器,它是一种具体 ...
- uri,url和urn的区别以及URLEncoder
java.net.URL类不提供对标准RFC2396规定的特殊字符的转义,因此需要调用者自己对URL各组成部分进行encode.而java.net.URI则会提供转义功能.因此The recommen ...
- URI,URL与URN的区别
2017-11-13 16:51:49 URI = Universal Resource Identifier 统一资源标志符 URL = Universal Resource Locator 统一资 ...
- URI、URL 和 URN的区别
关于URI:URL类似于住址,它告诉你一种寻找目标的方式. URL和URN都是URI的子集. URI规范:协议名称://域名.根域名/目录/文件名.后缀#sddf URI :Unifor ...
- URI, URL, and URN
URI: uniform resource identifier,统一资源标识符,用来唯一的标识一个资源. URL: uniform resource locator,统一资源定位器,它是一种具体的U ...
- (三)URI、URL和URN/GET与POST的区别
(一)URI.URL.URN HTTP使用统一资源标识符(Uniform Resource Identifiers,URI)来传输数据和建立连接. URL是一种特殊类型的URI,包含了用于查找某个资源 ...
- 关于URI URL URN
刚琢磨.整理了关于escape.encodeURIComponent.encodeURI的知识.突然又对URI有点模糊了,遂整理了以下资源 : 资源一: URL,URI 和URN 的举例理解 资源二: ...
- [转载]URI 源码分析
需要提前了解下什么是URI,及URI和URL的区别: URI. URL 和 URN 的区别 URI 引用包括最多三个部分:模式.模式特定部分和片段标识符.一般为: 模式:模式特定部分:片段 如果省略模 ...
随机推荐
- Java数据库连接与查询
9个步骤: 1.加载数据库驱动: 2.连接数据库: 3.创建语句statement: 5.创建sql语法字符串: 6.执行: 7.如果步骤6是执行新增.修改.删除操作那么返回的是影响的行数,如果是执行 ...
- shell grep
grep "str" file > /dev/null if [ $? -eq 1]; then echo "no str" else echo &quo ...
- HCNA-链路聚合(手工模式)
设置链路聚合1 模式设置为手动 进入端口设置链路聚合号 进入另一个端口设置链路聚合号 使用dis cur 查看到相应的端口已经设置为聚合状态 1.使用相同的方法进入端口 设置聚合 2.使用dis显示聚 ...
- 底层原理Hashmap源码解析实例
Map.java package com.collection; public interface Map<K, V> { public V put(K k, V v); public V ...
- 2018-2019-2 网络对抗技术 20165225 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165225 Exp5 MSF基础应用 验前准备 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻 ...
- 【UNIX环境高级编程】文件I/O
[UNIX环境高级编程]文件I/O大多数文件I/O只需要5个函数: open.read.write.lseek以及close 不带缓冲的I/O: 每个read和write都调用内核中的一个系统调用 1 ...
- Mockito单元测试实战
最近使用Mockito完成了几个简单的测试,写个博客mark一下: 第一种模拟web请求 @SpringBootTest @RunWith(SpringRunner.class) @WebAppCon ...
- 透过实现小型打包工具理解webpack
面试经常有问到 webpack,偶遇一篇比较有实用价值的且有利于理解的文章,现总结如下: 本篇文章中要实现的这个迷你打包工具,它主要能实现如下两个功能: ①.将 ES6 转换成 ES5: ②.支持在 ...
- Zynq系列FPGA如何固化bit文件到QSPI_Flash
最近由于项目需要,要将bit文件固化到zedboard的flash中,使程序上电自启,断电不丢失. 我们知道,一般板级调试的时候都是直接下载bit流到FPGA就行,固化到Flash的话,也是先生成.m ...
- spring batch (四) Job的配置及配置文件说明介绍
内容来自<Spring Batch 批处理框架>,作者:刘相.我只是个搬运工. 一.Spring Batch提供了独立的标签用来顶一个Job配置,分别是job.step.tasklet.c ...