学习之请求和响应

3.2 请求和响应报文

3.2.1 报文的格式

主体上分为报文首部和报文主体,中间空行隔开

1681522962846

报文部首可以继续细分为 "行" 和 "头"

1681522998417

3.2.2 请求报文

客户端发给服务端的报文

  • 请求报文格式
    • 请求首行(请求行); GET/POST 资源路径?参数 HTTP/1.1(默认是通过GET请求获取服务器信息)(通常表单提交信息到服务器用POST请求)
    • 请求头信息(请求头);
    • 空行;
    • 请求体;POST请求才有请求体

浏览器 f12 网络下查看请求数据包

1681524200024

form表单发送GET请求特点

1、由于请求参数在请求首行中已经携带了,所以没有请求体,也没有请求空行
2、请求参数拼接在url地址中,地址栏可见[url?name1=value1&name2=value2],不安全
3、由于参数在地址栏中携带,所以由大小限制[地址栏数据大小一般限制为4k],只能携带纯文本
4、get请求参数只能上传文本数据
5、没有请求体。所以封装和解析都快,效率高, 浏览器默认提交的请求都是get请求比如:地址栏输入回车,超链接,表单默认的提交方式

查看GET请求行,请求头,请求体

  • 请求行组成部分
    • 请求方式 GET
    • 访问服务器的资源路径?参数1=值1&参数2=值2 ... ...
    • 协议及版本 HTTP/1.1
GET /05_web_tomcat/login_success.html?username=admin&password=123213 HTTP/1.1
  • 请求头
-主机虚拟地址
Host: localhost:8080   
-长连接
Connection: keep-alive 
-请求协议的自动升级[http的请求,服务器却是https的,浏览器自动会将请求协议升级为https的]
Upgrade-Insecure-Requests: 1  
- 用户系统信息
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.75 Safari/537.36
- 浏览器支持的文件类型
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
- 当前页面的上一个页面的路径[当前页面通过哪个页面跳转过来的]:   可以通过此路径跳转回上一个页面, 广告计费,防止盗链
Referer: http://localhost:8080/05_web_tomcat/login.html
- 浏览器支持的压缩格式
Accept-Encoding: gzip, deflate, br
- 浏览器支持的语言
Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
  • 请求空行

  • 请求体

    • GET请求数据不放在请求体

form表单发送post请求特点

1、POST请求有请求体,而GET请求没有请求体。
2、post请求数据在请求体中携带,请求体数据大小没有限制,可以用来上传所有内容[文件、文本]
3、只能使用post请求上传文件
4、post请求报文多了和请求体相关的配置[请求头]
5、地址栏参数不可见,相对安全
6、post效率比get低

  • POST请求要求将form标签的method的属性设置为post

1681525012046

查看post的请求行 请求头 请求体

posted @ 2024-02-29 13:02  笠大  阅读(32)  评论(0)    收藏  举报