- URI、URL、URN
1.URI:Uniform Resource Identifier,统一资源标识符。
2.URL:Uniform Resource Locator,统一资源定位符。
3.URN:Uniform Resource Name,统一资源名。
URI是一个通用的概念,由两个主要的子集URL和URN构成,URL是通过描述资源的位置来标识资源的,URN是通过名字来识别资源的。
<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>
scheme:方案,访问服务器获取资源时要使用的协议,如:http
user:用户,某些方案访问资源时需要的用户名
password:密码,与user配套使用的密码
host:主机,资源宿主服务器的主机名或点分IP地址
port:端口,资源宿主服务器正在监听的端口号
path:路径,服务器上资源的本地名
params:参数,某些方案会用到,形如:参数名/参数值;参数名/参数值
query:查询,某些方案会用其传递参数,查询组件的内容没有通用格式
frag:片段,一小片或一部分资源的名字。引用对象时不会将frag字段传送给服务器,而是从服务器获取整个资源再根据片段来显示用户感兴趣的部分
% 转义标志
/ 路径段定界符
. 当前目录
.. 上层目录
# 分段定界符
? 查询字符串定界符
; 参数定界符
: 方案、用户/密码、主机/端口定界符
$+ 保留
@&= 保留,在某些方案的上下文中有特殊含义
{}|\^~[]'' 使用受限,由于各种传输代理的不安全处理,所以应对其进行编码
<>"" 不安全,这些字符在URL范围之外通常是有意义的,理应对其进行编码
0x00~0x1F,0x7F 受限,在US-ASCII字符集的不可打印区间内,不应使用
>0x7F 受限,超出US-ASCII字符集的范围
http 超文本传输协议
http://<host>:<port>/<path>?<query>#<frag>
https 安全超文本传输协议
https://<host>:<port>/<path>?<query>#<frag>
mailto 电子邮件协议
mailto:<RFC-822-addr-spec>
mailto:abc@xx.com
ftp 文件传输协议
ftp://<user>:<password>@<host>:<port>/<path>;<params>
rtsp 实时流传输协议
rtsp://<user>:<password>@<host>:<port>/<path>
rtspu 实时流传输协议(UDP方式实现的rtsp)
rtspu://<user>:<password>@<host>:<port>/<path>
file 文件传输协议
file://<host>/<path>
news 网络新闻协议
news:<newsgroup>
news:<news-article-id>
telnet 远程登录协议
telnet://<user>:<password>@<host>:<port>/