1:基本概念
1) 超文本:由多个信息源连接而成,该文本除了基本信息外,还可以有指向信息集合中其他文档的指针;格式有很多,最常使用的是HTML
2) URL:Uniform Resource Locator,统一资源定位符,也被称为网页地址,是互联网上标准的资源的地址
一般形式 protocol :// computer-name : port / document-name
a) protocol为访问文档所采用应用所使用的协议名
b) computer-name为文档所在计算机的域名,port为协议端口号(是可选项)
c) document-name为文档名,包括路径和文件名
3) URI:Uniform Resource Identifier,统一资源标志符,可以通过它来定位任何远程或本地的可用资源;URL是URI元素的成分,URI包括URL和URN两部分
通用格式 协议 :[//] [[用户名 [:密码] @ ] 主机名 [:端口号]] [ /资源路径]
4) HTML:一种标记语言
a) 文本文档,可以用记事本或任何文本编辑器建立
b) 作用是在一个文档中标识出哪些词语需要链接,链接到何处,以及链接的文件时文本还是图像
c) 主要由两部分组成:头部(Head)和主体(Body)
5) MIME
HTTP并不是一个遵守MIME的协议,但是HTTP/1.1消息可以包含一个单独的MIME-Version常用头域,用来指出什么样的MIME协议版本被用于去构造消息
6) HTTP协议:分布式、合作市、多媒体信息系统服务、面向应用层的协议;客户端发起一个服务器上指定端口的HTTP请求,应答服务器进行响应
2:HTTP工作模式及特点
1) 请求/响应协议:客户端以请求方法、URI和协议版本号,然后紧接着一个类MIME消息(包括请求修饰符、客户信息和可能的消息主题);服务器以一个状态行(包括消息的版本协议和成功出错的状态码)并跟随一个类MIME消息(包含服务器信息、实体元信息和可能的实体)
2) 客户/服务器模式,且每次连接只处理一个请求
3) 无状态:协议对事务处理没有记忆能力,如果后续处理需要前面的信息,必须重传
3:HTTP请求报文/应答报文格式
请求消息和响应消息都是由开始行,消息报头,空行(只有CRLF的行),消息正文(可选)组成;对于请求消息,开始行是请求行;对于响应消息,开始行是状态行
1) 消息报头包括通用报头、请求报头、响应报头、实体报头;每一个报头域都由名字+”:”+空格+值组成
2) 支持三种请求方法:GET请求、HEAD请求、POST请求
3) 状态行格式:HTTP-VERSION<空格>Status-Code<空格>Reason-Phrase<换行回车符>
a) Status-Code是一个三位数字组成的状态码
b) Status-Code第一个数字定义响应的类别
i. 1**:信息响应类,表示接收到请求并且继续处理
ii. 2**:处理成功响应类,表示动作被成功接收、理解和接受
iii. 3**:重定向响应类,为了完成指定的动作,必须接受进一步处理
iv. 4**:客户端错误,客户端包含语法错误或者是不能正确执行
v. 5**:服务端错误,服务器不能正确执行一个正常的请求
4:Cookie——由服务器端生成,发送给User-Agent,User-Agent将Cookie的key/value保存到某个目录下,下次请求同一网站时发送该Cookie给服务器
1) Cookie名称和值由服务器端自己定义,这样服务器可以知道用户是否为合法用户以及是否需要重新登录等
2) Cookie允许Web站点跟踪、识别用户,从而达到限制用户访问或把内容与用户身份关联的目的等
3) 缺点是站点可以知道用户许多信息,不利于用户隐私保护
5:HTTP消息中的headers
1) 首部字段又称为元信息,即关于信息的信息
2) 请求消息中的首部字段告诉服务器怎样解释本次请求,包括用户可以接受的数据类型、压缩方法和语言等
3) 应答消息中的首部字段主要包括实体信息类型、长度、压缩方法、最后一次修改时间、数据有效期等
4) 首部字段由字段名和随后的冒号、一个空格和字段值组成
6:浏览器
1) 由一组客户、一组解释器和一个管理它们的控制器组成
2) 控制器形成了浏览器的中心部件,它控制鼠标单击与键盘输入,并且调用其他组件来执行用户指定的操作
3) 解释器通过将HTML规格转换成适合用户显示硬件的命令来处理版面细节;必须存储关于显示器上位置之间关系的信息和HTML文档中被锚定的项,当用户用鼠标选择了一个项时,浏览器通过当前的光标位置和存储的位置信息来决定哪个项被用户选中了
4) 服务器将MIME标志符放入传送的数据中,来告诉浏览器使用哪种插件读取相关文件