《HTTP权威指南》学习笔记——URL和资源
URL与资源
URL是互联网资源的标准化名称
1.浏览互联网资源
URL是浏览器寻找信息时所需的资源位置
URI是一类更通用的资源标识符,URL是它的子集。
URI的两个子集:URL和URN
URL提供了一种统一的资源命名方式:
URL方案(例如HTTP,FTP等)😕/服务器位置/路径
2.URL的语法
大部分URL方案的URL语法都建立在由9部分构成的通用格式上:
<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>
方案(schema):获取资源使用的协议
用户(user):需要的用户名
密码(password):需要的密码,
主机(host):服务器的主机名或点分IP地址
端口(port):正在监听的端口号(很多方案都有默认端口号,HTTP:80)
路径(path):资源的本地名
参数(params):输入参数
查询(query):传递参数以激活应用程序
片段(frag):一小片或部分资源的名字
URL最重要的3部分是方案(schema),主机(host)和路径(path)
2.1查询字符串
http://www.joes-hardware.com/inventory-check.cgi?item=12731
问号右边的内容是查询组件
查询字符串以一系列键值对的形式出现,用&分隔
如
http://www.joes-hardware.com/inventory-check.cgi?item=12731
&color=blue
2.2片段
引用部分资源或资源的一个片段,用片段(frag)组件来表示,用#符来标识
http://www.joes-hardware.com/tools.html#drills
HTTP服务器通常只处理整个对象,而不是对象的片段,客户端不能将片段传送给服务器。浏览器获取整个资源后,会根据片段显示感兴趣的部分资源。
3.URL快捷方式
两种URL:绝对的和相对的
3.1相对URL
不完整的,相对不另一个基础的URL进行解析。
3.2自动扩展URL
用户不需要输入完整的URL,浏览器自动扩展。
- 主机名扩张(自动补全)
- 历史扩展(历史记录)
4.字符
ASCII码无法表示非罗马语言的变体字符
--->URL中集成转义序列
4.1编码机制
转义表示法表示不安全字符的
包含一个百分号(%),后面跟着两个表示字符ASCII码的十六进制数。
http://www.w3school.com.cn/example/html/form_action.asp?text=%D3%EF%D1%D4
上面那个连接中,%D3%EF%D1%D4就是转义的字符
在URL中,有几个字符被保留起来了。
有着特殊含义。
5.方案
- http:超文本传输协议,与通用的URL格式相符(除了没有用户名和密码之外)。若省略了端口,则默认是80。
- https:与http是一对。区别在于https使用了SSL(SSL为HTTP连接提供了端到端的加密机制)语法和HTTP的相同,默认端口是443
- mailto:URL指向E-mail地址
- ftp:文件传输协议URL可从FTP服务器上下载或上传文件,并获取FTP服务器上的目录结构内容的列表
- rtsp,rtspu: RTSP URL是可以通过实时流传输协议(Real Time Streaming Protocol)解析的音/视频媒体资源的标识符
- file:表示一台主机上可直接访问的文件
- telnet:用于访问交互式业务