简介

Fiddler是一个抓包工具,可以将网络传输发送与接收的数据包进行截获、重发、编辑等操作。也可以用来检测流量。原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我们也可以通过设置进行修改。

Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据。在打开它的那一瞬间,它就已经设置好了浏览器的代理了。当你关闭的时候,它又帮你把代理还原了。Fiddler也可以抓取支持https代理的任意程序的数据包但是需要要先安装证书。

代理就是在客户端和服务器之间设置一道关卡,客户端先将请求数据发送出去后,代理服务器会将数据包进行拦截,代理服务器再冒充客户端发送数据到服务器;同理,服务器将响应数据返回,代理服务器也会将数据拦截,再返回给客户端。

工具栏

说明注释、重新请求、删除会话、继续执行、流模式/缓冲模式、解码、保留会话、监控指定进程、寻找、保存会话、切图、计时、打开浏览器、清除IE缓存、编码/解码工具、弹出控制监控面板、MSDN、帮助

开启抓包

Fiddler想要抓到数据包,要确保Capture Traffic是开启,在File –> Capture Traffic。开启后再左下角会有显示,当然也可以直接点击左下角的图标来关闭/开启抓包功能。

或者通过点击左下角图标。开启的时候该图标显示,关闭的时候该图标隐藏。

一般直接打开Fiddler的时候就开始自动抓包了。

已抓取数据包列表

每个Fiddler抓取到的数据包都会在该列表中展示,点击具体的一条数据包可以在右侧菜单点击Insepector查看详细内容。主要分为请求(即客户端发出的数据)和响应(服务器返回的数据)两部分。

数据包列表字段

名称

含义

#

抓取HTTP Request的顺序,从1开始,以此递增

Result

HTTP状态码

Protocol

请求使用的协议,如HTTP/HTTPS/FTP等

Host

请求地址的主机名

URL

请求资源的位置

Body

该请求的大小

Caching

请求的缓存过期时间或者缓存控制值

Content-Type

请求响应的类型

Process

发送此请求的进程:进程ID

Comments

允许用户为此回话添加备注

Custom

允许用户设置自定义值

数据包列表图标

图标

含义

请求已经发往服务器

已从服务器下载响应结果

请求从断点处暂停

响应从断点处暂停

请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body)

请求使用 HTTP 的 POST 方法

请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道

响应是 HTML 格式

响应是一张图片

响应是脚本格式

响应是 CSS 格式

响应是 XML 格式

响应是 JSON 格式

响应是一个音频文件

响应是一个视频文件

响应是一个 SilverLight

响应是一个 FLASH

响应是一个字体

普通响应成功

响应是 HTTP/300、301、302、303 或 307 重定向

响应是 HTTP/304(无变更):使用缓存文件

响应需要客户端证书验证

服务端错误

会话被客户端、Fiddler 或者服务端终止

Statistics选项

统计面板,这里显示请求性能,随意点击一个请求,就可以看到Statistics关于该HTTP请求的性能以及数据分析了。

Inspectors选项(常用)

Inspectors是用于查看会话的内容,上半部分是请求的内容,下半部分是响应的内容。

请求区域

名称

含义

Headers

TextView

显示请求的数据

SyntaxView

以表单形式显示所有的请求参数和参数值

WebForms

HexView

Auth

显示认证信息

Cookies

显示所有cookies

Raw

显示Headers和Body数据

JSON

若请求数据是json格式,以json形式显示请求内容

XML

若请求数据是xml格式,以xml形式显示请求内容

响应区域

名称

含义

Transformer

Headers

TextView

显示响应的数据

SyntaxView

ImageView

HexView

WebView

Auth

显示认证信息

Caching

Cookies

显示所有cookies

Raw

显示Headers和Body数据

JSON

 若响应数据是json格式,以json形式显示响应内容

XML

 若响应数据是xml格式,以xml形式显示响应内容

AutoResponder选项

AutoResponder允许你拦截指定规则的求情,并返回本地资源或Fiddler资源,从而代替服务器响应。

Composer选项(常用)

Composer允许自定义请求发送到服务器,可以手动创建一个新的请求,也可以在会话表中,拖拽一个现有的请求。常用于模拟GET和POST请求。

模拟GET请求

GET请求比较简单,接下来说下模拟POST请求。

模拟POST请求

这里模拟的是发送JSON数据,主要是需要在请求头设置下 Content-Type : application/json;charset=utf-8 ,然后在请求体里写上JSON数据。

如果发送普通文本数据的话,不需要设置请求头,默认的 Content-Type 是 application/x-www-form-urlencoded,表示普通的form表单元素提交,在发送前编码所有字符,提交的参数格式遵循:name=value&name=value&name=value...。也就是说要按照这种格式把数据写在请求体里。

请求结果

Fiddler Orchestra Beta选项

FiddlerScript选项

显示的是该请求的JS脚本。

Log选项

能够查看该次请求的日志。

Filters 选项(常用)

Fiters 是过滤请求用的,左边的窗口不断的更新,当你想看你系统的请求的时候,你刷新一下浏览器,一大片不知道哪来请求,看着碍眼,它还一直刷新你的屏幕。这个时候通过过滤规则来过滤掉那些不想看到的请求。

勾选左上角的Use Filters开启过滤器,这里有两个最常用的过滤条件:Zone和Host

Zone 指定只显示内网(Intranet)或互联网(Internet)的内容。

Host 可选择隐藏,展示,标记某个域名下的会话。

设定好后可点击Actions中的 Run Filterset now 来执行过滤条件。

Timeline 选项

Timeline显示请求响应时间,在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间。

Fiddler 命令行

命令行在左下角

FIddler断点功能就是将请求截获下来,但是不发送,这个时候你可以干很多事情,比如说,把包改了,再发送给服务器君。还有一大堆的事情可以做,就不举例子了。

命令

对应请求项

介绍

示例

?

All

问号后边跟一个字符串,可以匹配出包含这个字符串的请求

?google

>

Body

大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求

>1000

<

Body

小于号跟大于号相反,匹配出请求大小,小于这个数字的请求

<100

=

Result

等于号后面跟数字,可以匹配HTTP返回码

=200

@

Host

@后面跟Host,可以匹配域名

@www.baidu.com

select

Content-Type

select后面跟响应类型,可以匹配到相关的类型

select image

cls

All

清空当前所有请求

cls

dump

All

将所有请求打包成saz压缩包,保存到“我的文档\Fiddler2\Captures”目录下

dump

start

All

开始监听请求

start

stop

All

停止监听请求

stop

断点命令

对应请求项

介绍

示例

bpafter

All

bpafter后边跟一个字符串,表示中断所有包含该字符串的请求

bpafter baidu(输入bpafter解除断点)

bpu

All

跟bpafter差不多,只不过这个是收到请求了,中断响应

bpu baidu(输入bpu解除断点)

bps

Result

后面跟状态吗,表示中断所有是这个状态码的请求

bps 200(输入bps解除断点)

bpv / bpm

HTTP方法

只中断HTTP方法的命令,HTTP方法如POST、GET

bpv get(输入bpv解除断点)

g / go

All

放行所有中断下来的请求

g

参考地址:https://www.cnblogs.com/yyhh/p/5140852.html

https://www.cnblogs.com/conquerorren/p/8472285.html

抓包工具 Fiddler 使用介绍的更多相关文章

  1. 抓包工具Fiddler的使用

    Fiddler 教程 Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发 ...

  2. 网络抓包工具 Fiddler

    网络抓包工具 Fiddler 下载网址 http://www.telerik.com/fiddler 简单介绍 Fiddler是一个http协议调试代理工具,它能够记录并检查全部你的电脑和互联网之间的 ...

  3. 移动端抓包工具——Fiddler(一)

     web端抓包一般利用浏览器自带的检查功能(F12),然后看Network项,根据请求响应判断出问题 移动端怎么抓包呢,这里介绍一款常用的抓包工具——Fiddler 前提: 1.必须确保安装fiddl ...

  4. 和我一起学习爬虫之HTTP/HTTPS抓包工具--Fiddler

    HTTP/HTTPS抓包工具--Fiddler Fiddler[ˈfɪdlə(r)] 1. HTTP代理神器Fiddler Fiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP ...

  5. 【转】抓包工具Fiddler的使用教程(十二)下:Fiddler抓取HTTPS

    在教程十二(上),我们也了解了HTTPS协议,该教程就和大家分享Fiddler如何抓取HTTPS 抓包工具Fiddler的使用教程(十二):[转载]HTTPS协议 再次回忆一下关键内容: iddler ...

  6. 抓包工具 Fiddler 使用:弱网络环境模拟限速测试流程

    转自:http://www.51testing.com/html/80/n-3726980.html   抓包工具 Fiddler 使用:弱网络环境模拟限速测试流程 发表于:2018-6-06 11: ...

  7. 爬虫(二):抓包工具Fiddler

    1. 抓包工具Fiddler 1.1 Fiddler下载与安装 最简单的方法,打开百度,搜索fiddler下载. 下载完毕解压即可,此版本为绿色版. 点击这个即可运行抓包软件. 1.2 Fiddler ...

  8. 抓包工具fiddler下载配置(三):手机设置代理

      前言 本篇仅讲解了手机端如何设置代理,是[抓包工具fiddler下载配置(一):下载/安装&信任证书]的后续文章,未下载安装抓包工具的需先参考文章[抓包工具fiddler下载配置(一):下 ...

  9. 抓包工具fiddler下载配置(一):下载/安装&信任证书

    简介 Fiddler一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件 ...

随机推荐

  1. Web.Debug.config和Web.Release.config设置xdt:Transform无效的解决办法

    在VS中右键网站>发布时xdt:Transform 生效.但是使用tfs的build时,build可以正常通过,但是web.release.config中的xdt:Transform 无效,其它 ...

  2. asp.net WebService如何去掉asmx后缀

    现在有一个发布好的WebService,地址是http://hovertree.com:2706/UploadExpenseToConstract.asmx能不能把最后面的asmx去掉呢?变成http ...

  3. Python用HTMLTestRunner生成html测试报告

    小编的主机:mac 一.引入HTMLTestRunner包 1.下载HTMLTestRunner.py,已上传到网盘,点击下载 2.将HTMLTestRunner.py复制到python安装目录的Li ...

  4. python爬虫知识脉络

  5. Springboot & Mybatis 构建restful 服务四

    Springboot & Mybatis 构建restful 服务四 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务三 2 restful ...

  6. Linux---基础命令(二)

    https://www.linuxprobe.com/chapter-02.html  (Linux就要这么学) 一.基本权限命令 权限命令:chmod - rwx rwx rwx 第一位代表的是系统 ...

  7. Appium系列文章(1)获取appPackage和appActivity

    appPackage和appActivity 进行appium自动化测试非常重要的两个参数,我们所测试的APP不同,这两个参数肯定也是不一样的.那如何快速的获取这APP的这两个参数呢? 通过cmd命令 ...

  8. [Java源码解析] -- String类的compareTo(String otherString)方法的源码解析

    String类下的compareTo(String otherString)方法的源码解析 一. 前言 近日研究了一下String类的一些方法, 通过查看源码, 对一些常用的方法也有了更透彻的认识,  ...

  9. 解决jenkins shell执行sonar-scanner提示命令存在的问题

    通过jenkins的以下三个方式去执行sonar-scanner,抛如下错误. Send files or execute commands over SSH before the build sta ...

  10. Ubuntu14.04打开cheese却黑屏的问题

    1.安装cheese 2.如发现cheese打开后,摄像头的灯亮了,但是没有图像,黑屏,且按钮都是不可操作状态,这时需要进行一下检测: a.lsusb,看是否有摄像头设备 b.ls /dev/vide ...