第2章 简单的HTTP协议
2.1 HTTP协议用于客户端和服务器端之间的通信
1)客户端:请求访问资源的一端;
服务器端:提供资源响应的一端;
2)两台计算机之间使用HTTP协议进行通信时,通信线路上必定一端是客户端,一端是服务器端,HTTP协议能够区分两者;
2.2 通过请求和响应的交换达成通信协议
1)请求访问某台HTTP服务器上的/index.htm页面资源;
请求报文是由请求方法/请求URI/协议版本/可选的请求首部字段和内容实体构成;
2)服务器响应报文;
响应报文基本上由协议版本/状态码/用以解释状态码的原因短语/可选的响应首部字段以及实体主体构成;
2.3 HTTP是不保存状态的协议
1)HTTP是无状态协议;
2)增加cookie来管理状态;
2.4 请求URI资源
2.5 告知服务器意图的HTTP方法
1)GET:获取资源
请求访问已被URI识别的资源,指定的资源经服务器端解析后返回相应内容;
2)POST:传输实体内容
3)PUT:传输文件
在请求报文的主体中包含文件内容,保存到请求URI指定的位置;
4)HEAD:获得报文首部
head和get一样,但是不返回报文主体内容,用于确认URI的有效性及资源更新的日期时间等;
5)DELETE:删除文件
按照请求URI删除指定资源;
6)OPTIONS:询问支持的方法
查询针对请求URI指定的资源支持的方法;
7)TRACE:追踪路径
8)CONNECT:要求用隧道协议连接代理
2.6 使用方法下达命令
2.7 持久连接节省通信量
1)持久连接(HTTP Persistent Connections ,也称为HTTP keep-alive或HTTP connection reuse):只要任意一端没有明确提出断开连接,则保持TCP连接状态;
2)持久连接减少了TCP连接重复建立和断开的开销,减轻了服务器的负载;
3)管线化(pipelining)可以并行传送请求;
2.8 使用cookie的状态管理
1)coolie技术在请求和响应报文中写入cookie信息来控制客户端的状态;