HTTP协议(请求消息)
...大约 2 分钟
1. HTTP的概念
超文本传输协议(Hypertext Transfer Protocol,HTTP):定义了客户端和服务器端通信时,发送数据的格式。
2. HTTP的特点
- 基于TCP/IP的高级协议,三次握手。
- 默认端口号:80
- 基于请求/响应模型的:发送一次请求对应一次响应
- 无状态的:每次请求之间相互独立,不能交互数据
3. 历史版本的区别
- 1.0:每一次请求响应都会建立新的连接
- 1.1:复用连接
只用了解。
4. 请求消息(Request)数据格式
包含请求行、请求头(也叫请求头部)、请求空行、请求体(正文)。
4.1. 请求行
这里的请求行的内容为POST /demo HTTP/1.1
,请求行的格式为请求方式 请求url 请求协议/版本
。
- 请求方式: HTTP协议有7种请求方式,常用的有GET和POST 2种。
- GET:
- 请求参数放在请求行中,在url后。类似这种
http://localhost:8080/demo1?username=zhangsan
; - 请求的url长度是有限制的;
- 不太安全,直接暴露在URL中。
- 请求参数放在请求行中,在url后。类似这种
- POST:
- 请求参数在请求体中;
- 请求的url长度没有限制;
- 相对安全,需要通过一定的操作才能看到。
- GET:
4.2. 请求头
客户端浏览器告诉服务器一些信息。请求头的格式:请求头名称: 请求头值
。
4.3. 请求空行
空行,就是用于分割POST请求的请求头,和请求体的。
4.4. 请求体(正文)
用来封装POST请求消息的请求参数。
5. 响应消息(response)数据格式
后续的进阶阶段学习。