HTTP协议
HTTP(HyperText Transfer Protocol,超文本传输协议)定义了浏览器怎样向 WWW 服务器请求文档,以及服务器怎样传输文档给浏览器。HTTP 是一个应用层协议,基于 TCP/IP 协议。
1. 主要特点
- 无连接:限制每次连接只处理一个请求,服务器处理完客户端的请求,并收到客户端的应答后,即断开连接。
- 无状态:协议对于事务处理没有记忆能力。每次请求都是独立的,前后的请求没有直接关系,服务器不保存客户端的状态。
2. 工作过程
HTTP 基于 C/S 模式,且面向连接。
(1)客户端与服务器建立 TCP 连接。
(2)客户端向服务器发出 HTTP 请求。
(3)服务器接收请求,并将响应结果返回给客户端。
(4)释放 TCP 连接。
3. HTTP请求报文
报文中的数据都使用ASCII编码,各个字段的长度是不确定的。
HTTP/1.1 协议的请求方法包括 GET,POST,HEAD,PUT,DELETE,PATCH,OPTIONS,TRACE,CONNECT 等。
4. HTTP响应报文
状态代码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。
1xx:通知信息。表示请求已接收或正在处理。
2xx:成功。表示请求已被接收。
3xx:重定向。要完成请求必须进行更进一步的操作。
4xx:客户端错误。请求有语法错误或不能完成。
5xx:服务器错误。服务器失效无法完成请求。