一、请求报文和响应报文
1、请求报文
组成:请求方法、请求URI、协议版本、可选的请求首部字段和内容实体
2、响应报文
组成:协议版本、状态码、用以解释状态码的原因短语、可选的响应首部字段、实体主体
二、HTTP是不保存状态的协议
- HTTP是无状态协议,即在HTTP这个级别,协议对于发送过的请求或相应都不做持久化处理
- 好处:方便快速处理大量事务,确保协议的可伸缩性
- 缺点:无状态的性质使得网站从登录页面跳转后无法保持登录状态,为了实现这个功能,引入了Cookie
三、HTTP方法
方法 | 说明 | 支持的HTTP协议版本 |
---|---|---|
GET | 获取资源 | 1.0、1.1 |
POST | 传输实体主体 | 1.0、1.1 |
PUT | 传输文件 | 1.0、1.1 |
HEAD | 获得报文首部 | 1.0、1.1 |
DELETE | 删除文件 | 1.0、1.1 |
OPTIONS | 询问支持的方法 | 1.1 |
TRACE | 追踪路径 | 1.1 |
CONNECT | 要求用隧道协议连接代理 | 1.1 |
LINK | 建立和资源之间的联系 | 1.0 |
UNLINK | 断开连接关系 | 1.0 |
四、持久连接
- 只要任意一端没有明确提出断开连接,则保持TCP连接状态
- 好处:
- 减少TCP连接的重复建立和断开造成的额外开销,减轻了服务器端的负载
- 减少开销的那部分时间,使HTTP请求和响应能够更早结束,这样Web页面的显示速度就相应提高
五、管线化
不用等待响应即可直接发送下一个请求,可以实现同时并行发送多个请求,不需要一个个等响应。
六、Cookie
1、没有Cookie信息状态下
- 客户端发送请求报文
- 服务器生成Cookie,返回客户端带着Cookie信息的响应报文
- 客户端保存cookie信息
2、有Cookie信息状态下
直接发送带有cookie信息的请求报文