URL与资源(http权威指南第二章)
2017-06-05 21:03
190 查看
URL与资源
本章将介绍:- URL语法,以及各种URL组件的含义及其所做的工作
- 很多web客户端都支持的URL快捷方式,包括相对URL和自动扩展URL
- URL编码和字符规范
- 支持各种因特网信息系统的常见URL方案
- URL的未来
1. 浏览因特网资源
大多数URL都有同样的:“方案://服务器位置/路径“结构
URL未用户以及他们的浏览器提供了找到信息所需的所有条件,URL定义了用户所需的特定资源,它位于何处以及如何获取它
2. URL的语法
URL随着方案的不同而有所不同
URL的通用格式如下
<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>
方案
方案告诉负责解析URL的应用程序应该使用什么协议,用冒号与其它部分分隔,大小写无关的
主机与端口
主机组件标示了因特网上能够访问资源的宿主机器(主机名或IP地址),端口组件标示了服务器正在监听的网络端口,对下层使用了TCP协议的http来说,默认端口是80
用户名和密码
很多服务器都要求输入用户名和密码才会允许用户访问数据,ftp服务器就是这样
ftp://anonymous:my_passwd@ftp.prep.ai.mit.edu/pub/gnu
路径
路径组件说明了资源位于服务器的什么地方,通常很像一个分级的文件系统路径
参数
为了向应用程序提供它们所需的输入参数,以便正确的与服务器进行交互,URL中有一个参数组件,它们为应用程序提供了访问资源所需的附加信息
ftp://prep.ai.mit.edu/pub/gnu;tpye=d
路径组件可以分为若干路径段,每段都可以有自己的参数
http://www.joes-hardware.com/hammers;sale=false/index.html;graphics=true
查询字符串
很多资源,比如数据库服务,都是可以通过提问题或进行查询来缩小所请求资源类型范围的
http://www.joes-hardware.com/inventory-check.cgi?item=12731
?右边的是查询组件,URL的查询组件和标示网关资源的URL路径组件一起别发送给网关资源
- 片段
为了引用部分资源或资源的一个片段,片段组件表示一个资源内部的片段。http服务器通常只处理整个对象,浏览器从服务器获得整个资源之后,会根据片段来显示你感兴趣的那部分资源
http://www.joes-hardware.com/tools.html#drills
URL快捷方式
web客户端可以理解并使用几种URL快捷方式,包括相对URL和URL的自动扩展
相对URL
URL有两种方式:绝对的和相对的。绝对URL包含访问资源所需的全部信息
相对URL是不完整的,要从相对URL中获取访问资源的全部信息,就必须相对于一个被称为基础的URL进行解析
相对URL是URL的一种便捷缩略记法
相对URL为保持一组资源的便捷性提供了一种便捷的方式,可以在半一一组文件的同时,仍然保持链接的有效性
由相对URL转换到绝对URL的第一步就是找到基础URL,基础URL由三种方式:
在资源中显示提供
有些资源会显示指定基础URL,比如HTML文档中可能包含了一个定义了基础URL的HTML标记
封装资源的基础URL
没有显示指定基础URL,可以将该资源的URL作为基础
没有基础URL
这通常意味着有一个相对URL,但有时可能是一个不完整或损坏的URL
自动扩展URL
用户不需要输入完整的URL,浏览器会自动扩展
这些扩展有两种方式:
主机名扩展
只要一些小提示,浏览器就可以将我们输入的主机名扩展为完整的主机名
历史扩展
将以前用户访问过的URL历史保存起来,当我们输入URL是,将输入URL与历史记录中的URL的前缀进行匹配,并提供一些完整的选项供我们选择
各种令人头疼的字符
URL是可移植的,能被因特网任意协议安全传输,而且是可读的,完整的
URL字符集
ASCII和转义序列
编码机制
通过“转义”表示法来表示不安全的字符,包含一个百分号(%),后面跟着两个表示字符的ASCII码的十六进制,例如:
~ 0x7E
http://www.joes-hardware.com/%7Ejoe
空格 0x20
http://www.joes-hardware.com/more%20tools.html
% 0x25
http://www.joes-hardware.com/100%25satisfaction.html
字符限制
在URL中,有几个字符被保留起来,有着特殊的含义
方案
http
超文本传输协议方案,没有用户名和密码,默认端口是80
https
与http唯一的区别在于https使用了网景的SSL,提供了端到端的加密机制,默认端口是443
mailto
mailto URL指向的是E-mail地址
ftp
文件传送协议URL可以从ftp服务器上下载或向其上载文件
rtsp,rtspu
RTSP URL是可以通过实时流传输协议解析的音/视频媒体资源的标识符
file
方案file表示一台指定主机上可直接访问的文件
news
方案news用来访问一些特定的文章或新闻组
telnet
方案telnet用于访问交互式业务
相关文章推荐
- HTTP权威指南 第二章 URL与资源 & 第三章 HTTP报文
- 《HTTP权威指南》第二章 URL与资源
- 第二章 URL与资源
- 1.http权威指南:url与资源
- 《HTTP权威指南》学习笔记——URL和资源
- 《HTTP权威指南》学习笔记(2)第2章URL与资源(关键词:计算机网络/HTTP/URL/资源)
- 【HTTP权威指南】第二章-URL与资源
- 《HTTP权威指南》– 2.HTTP报文与URL资源
- [HTTP权威指南读书笔记]第二章—URL与资源
- HTTP权威指南 第2章 URL与资源
- URL - 统一资源定位器
- http权威指南笔记第二章URL
- 线程URL访问网络资源
- 使用URL访问网络资源
- 使用URL访问网络资源
- 视频相关的url资源
- web.xml中配置访问资源URL<url-pattern>/</url-pattern>时无法访问.html、.jsp、.js、.css等静态资源时的解决方案
- Android 网络:使用URL访问网络资源,ImageView,下载到本地
- 统一资源标识符(URI)、统一资源名称 (URN) 和统一资源定位器 (URL) 的区别