HTTP协议和抓包工具Fiddler

HTTP,Fiddler

  • 1.HTTP是什么
  • 2.HTTP协议与客户端和服务器
  • 3.HTTP协议的报文格式
    • 1.抓包工具
    • 2.HTTP报文格式
      • 1.HTTP请求的报文格式
      • 2.HTTP响应的报文格式
  • 4.末语

1.HTTP是什么

HTTP也叫超文本传输协议,是一种应用层协议,它是非常典型的应用层协议。
我们打开一个网站,等待一会就可以看见画面,这个过程中就是通过HTTP协议来通信的。

2.HTTP协议与客户端和服务器

HTTP协议的模型:属于一次请求 一次响应的协议。

例子:打开一个网站。
浏览器就相当于一个客户端
客户端给服务器发送HTTP请求(输入的网址),服务器根据请求找到网址的html资源,然后把这个资源响应返回给客户端(HTTP响应)。

3.HTTP协议的报文格式

1.抓包工具

抓包工具可以获取到HTTP协议的格式,它相当于一个中间人,在客户端和服务器的中间,客户端发送的HTTP请求,和服务器发送的HTTP响应都发给中间人,中间人再发给两边。这样的话,使用抓包工具就可以分析出请求和响应的结果。
HTTP协议和抓包工具Fiddler_第1张图片
抓包工具推荐使用 fiddler
简单且功能强。
下载地址点击这里
HTTP协议和抓包工具Fiddler_第2张图片

下载完了以后,我们在windows中点开它,它长这样。
HTTP协议和抓包工具Fiddler_第3张图片
左半部分是各种应用程序在通过HTTP传输数据,被fiddler抓包抓到。
双击你想要查看的HTTP请求,然后右上角点击RAW 显示的内容是HTTP请求的原始样子,右下角的RAW是HTTP响应的数据内容。
你所看到的请求和响应中的内容就是HTTP的报文格式。

=========================================
我这里的抓包比较多,有的人的抓包可能比较少,是因为fiddler默认只抓取HTTP协议的请求,但是很多网站用的是HTTPS(多了加密层),所以我们需要手动设置一下,让它可以抓取HTTPS请求。

点击Tools➡Options➡HTTPS 然后把全部都打勾,出现让你安装根证书 什么的 全部点yes。

HTTP协议和抓包工具Fiddler_第4张图片
HTTP协议和抓包工具Fiddler_第5张图片
抓包工具的使用 就是为了让我们可以看到请求和响应的HTTP报文格式,我们已经完成了工具的使用。

2.HTTP报文格式

以打开百度网站为例子。

1.HTTP请求的报文格式

HTTP协议和抓包工具Fiddler_第6张图片

由四部分组成。

1.首行
在这里插入图片描述

我们的GET是一个方法 然后中间的网站是一个URL,后面的HTTP/1.1是版本号,所以首行就是由 方法,URL,版本号组成。

2.请求报文头(header)
在这里插入图片描述
请求报文头使用键值对,键和值之间使用: 一行一个键值对

3.空行
使用空行来标记请求报文头的结束。

4.正文 body
正文部分一般是用户输入的内容 ,因为我们啥都还没输入,所以没有。

2.HTTP响应的报文格式

还是以百度网站为例子。
HTTP协议和抓包工具Fiddler_第7张图片

1.首行
在这里插入图片描述
HTTP/1.1 版本号;200 状态码;OK 状态码的描述

首行由版本号,状态码,状态码描述构成。

2.响应报文头(header)
HTTP协议和抓包工具Fiddler_第8张图片
和请求报文头一样 都是键值对,一行一个键值对。

3.空行
作为响应报头文的结束。

4.正文
正文数据可以是json,css,html,js,图片。

4.末语

如果本文章对你有帮助,麻烦点赞收藏一波!这对我很有帮助

你可能感兴趣的:(后端,http,fiddler,网络,网络协议,java-ee)