速解HTTP协议之请求消息

HTTP

概念

HTTP : Hyper Text Transfer Protocol   超文本传输协议

超文本传输协议

传输协议:定义了客户端和服务器端通讯时,发送数据的格式

在这里插入图片描述

特点

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

历史版本:

1.0 :每一次请求都会建立新的连接
1.1 :复用连接,对缓存的支持比较好。

请求消息数据格式

请求消息

格式

1.请求行

请求方式  请求url  请求协议/版本
GET  /2_Servlet4_0_war_exploded/s3  HTTP/1.1

   *请求方式:
       HTTP协议中有7中请求方式,常用的2
        GET :
           1.请求参数在请求行中,在url后
           2.请求的url长度有限制
           3.不太安全
        POST:
            1.请求参数在请求体中
            2.请求的url长度没有限制(文件上传)
            3.相对安全

2.请求头

客户端浏览器告诉服务端的一些信息

请求头名称 :请求值
 *常见的请求头:
      1.User-Agent:浏览器告诉服务器,我访问你时使用的浏览器版本信息
           *可以在服务器端获取该头的信息,解决浏览器的兼容性问题
   2.Referer:url
        *告诉服务器,我(当前请求)从哪里来?
       作用:
          1.防盗链
          2.统计的工作

盗链

3.请求空行

空行(分割POST请求的请求头和请求体)

4.请求体(正文)

封装POST请求消息的请求参数的

字符串格式

GET /2_Servlet4_0_war_exploded/s3 HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: keep-alive
Cookie: Idea-41e9004a=83460dde-8447-48d3-bfc3-ed6bae83b943
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0

 user=zhaoyun
文章目录
  1. 1. 概念
    1. 1.1. 超文本传输协议
    2. 1.2. 特点
  2. 2. 请求消息数据格式
    1. 2.1. 格式
      1. 2.1.1. 1.请求行
      2. 2.1.2. 2.请求头
      3. 2.1.3. 3.请求空行
      4. 2.1.4. 4.请求体(正文)
      5. 2.1.5. 字符串格式
,