HTTP协议(请求消息)

Mr.he...大约 2 分钟JavaWebHTTP

1. HTTP的概念

超文本传输协议(Hypertext Transfer Protocol,HTTP):定义了客户端和服务器端通信时,发送数据的格式。

2. HTTP的特点

  1. 基于TCP/IP的高级协议,三次握手。
  2. 默认端口号:80
  3. 基于请求/响应模型的:发送一次请求对应一次响应
  4. 无状态的:每次请求之间相互独立,不能交互数据

3. 历史版本的区别

  • 1.0:每一次请求响应都会建立新的连接
  • 1.1:复用连接

只用了解。

4. 请求消息(Request)数据格式

包含请求行、请求头(也叫请求头部)、请求空行、请求体(正文)。

4.1. 请求行

这里的请求行的内容为POST /demo HTTP/1.1,请求行的格式为请求方式 请求url 请求协议/版本

  • 请求方式: HTTP协议有7种请求方式,常用的有GET和POST 2种。
    • GET:
      1. 请求参数放在请求行中,在url后。类似这种http://localhost:8080/demo1?username=zhangsan
      2. 请求的url长度是有限制的;
      3. 不太安全,直接暴露在URL中。
    • POST:
      1. 请求参数在请求体中;
      2. 请求的url长度没有限制;
      3. 相对安全,需要通过一定的操作才能看到。

4.2. 请求头

客户端浏览器告诉服务器一些信息。请求头的格式:请求头名称: 请求头值

4.3. 请求空行

空行,就是用于分割POST请求的请求头,和请求体的。

4.4. 请求体(正文)

用来封装POST请求消息的请求参数。

5. 响应消息(response)数据格式

后续的进阶阶段学习。