URI 之 粗略讲解

I don't know why, but all I want right now is sex.

 

URI本质上是一个字符串,这个字符串的作用是唯一地标记资源的位置或者名字

它不仅能够标记万维网的资源,也可以标记其他的,如邮件系统、本地文件系统等任意资源。而“资源”既可以是存在磁盘上的静态文本、页面数据,也可以是由Java、PHP提供的动态服务。

下面的这张图显示了URI最常用的形式,由scheme、host:port、path和query四个部分组成,但有的部分可以视情况省略。

 

URI 基本组成部分

1、scheme:方案名或者叫协议名,表示该资源应该使用哪种协议来访问

  我们常见的有http,表示使用的是http协议。另外还有https,表示使用经过加密,安全的HTTPS协议。还有不常用的scheme,如ftp,ldap,file,news 等

2、:// 组成部分  当初设计者设计的

3、authority 部分 表示资源所在的主机名 通常的形式是“host:port”,即主机名加端口号。

  主机名可以是IP地址或者域名的形式,必须要有,否则浏览器就会找不到服务器。但端口号有时可以省略,浏览器等客户端会依据scheme使用默认的端口号,例如HTTP的默认端口号是80,HTTPS的默认端口号是443。

4、path  标记资源所在位置的path

5、参数部分

 

URI的完整格式

#fragment 表示页面的锚点或者标签

 

URI的编码

前面的举的例子,都是使用的ASCII码,如果使用英语以外的,比如汉语,或者特服符号,又会咋样?
URI引入了编码机制,对于ASCII码以外的字符集和特殊字符做一个特殊的操作,把它们转换成与URI语义不冲突的形式。这在RFC规范里称为“escape”和“unescape”,俗称“转义”

 

posted @ 2021-11-29 08:54  方达达  阅读(44)  评论(0编辑  收藏  举报