包抓取工具FIDLER使用的详细说明(FIDLER中文教程)
提琴手介绍
Fiddler(中文名:violin)是一个HTTP调试代理,以代理服务器的方式监控系统的Http网络数据流。Fiddler还可以让你检查所有的HTTP通信,设置断点,以及所有的“进出”数据的提琴(我通常用它来抓取数据包)
Fiddler还包括一个简单但强大的基于JScript的事件脚本子系统。NET,它可以支持大量的HTTP调试任务。
Fiddler官网提供了大量的帮助文档和视频教程,是学习Fiddler最好的材料
Fiddler_官网Fiddler_官方文档Fiddler_官方插件
提琴手抓包的工作原理
Fiddler以代理WEB服务器的形式工作。浏览器通过建立TCP连接与服务器通信,默认情况下浏览器向服务器发送HTTP请求
它使用代理地址:127.0.0.1和端口:8888。打开Fiddler会自动设置代理,退出时会自动注销代理,这样不会影响其他程序。
但是,如果Fiddler异常退出,由于Fiddler不会自动注销,因此无法访问网页。解决办法是重启Fiddler。
提琴手主界面
Fiddler的主界面分为工具面板、会话面板、监控面板和状态面板
提琴手工具面板
解释注释、重新请求、删除会话、继续执行、流模式/缓冲模式、解码、保留会话、监控指定进程、查找和保存会话、剪切图形、时间、打开浏览器、清除IE缓存、编码/解码工具、弹出控制监控面板、MSDN、帮助
提琴手的两种捕捉模式
缓冲模式)Fiddler在HTTP响应完成之前不会向应用程序返回数据。您可以控制响应并修改响应数据。但是时序图中有时会出现异常的流模式,提琴手会立即将HTTP响应的数据返回给应用程序。更接近真实浏览器的性能。时序图更准确,但无法控制响应。
提琴手会议小组
提琴手的会话面板图标
提琴手的监控面板
《提琴手》统计报告
请求总数、请求数据包大小、响应数据包大小。
请求开始时间、响应结束时间、握手时间、等待时间、路由时间、TCP/IP、传输时间。HTTP状态代码统计。
返回的各种类型数据的大小统计和饼图显示。
提琴手的时间线
每个网络请求都要经过域名解析、连接建立、请求发送和数据接收等阶段。
以时间为X轴,多个请求以图表的形式显示,形成瀑布图。在Fiddler中,只需在左侧选择一些请求,在右侧选择时间轴标签,就可以看到这些请求的瀑布图
绿色请求表示它是“有条件的请求”。
HTTP协议定义了五个条件请求头,其中最常见的两个是“如果修改自”和“如果不匹配”。
根据这两个头,服务器验证本地缓存是否过期,如果过期,则正常返回资源的最新版本;
否则,只返回304未修改,浏览器继续使用本地缓存。包含条件请求头的请求以绿色显示,否则以黑色显示。
阴影请求是缓冲模式下的请求,而实线请求是流模式下的请求。
Fiddler提供了两种数据包捕获模式:缓冲和流
在缓冲模式下,Fiddler将在响应完成后将数据返回给应用程序(通常是浏览器)。在这种模式下,可以方便地控制响应和修改响应内容。
在流模式下,Fiddler会将响应数据实时返回给浏览器,但是没有办法控制响应。一般采用流程模式,瀑布图会更逼真。
这两种模式可以通过Fiddler的工具栏选择。尤其是Fiddler的“自动回复”功能返回的回复只能是缓冲模式。
不同颜色的请求条对应不同类型的响应,这些响应根据响应头的MIME类型进行分类。
例如,浅绿色表示图片类型的响应;深绿色是JavaScript;紫色是CSS;其他的都是蓝色的。
请求中的黑色垂直线表示浏览器收到服务器响应的第一个字节的时刻。这个时间受DNS解析、连接建立、请求发送、等待服务器响应的影响。
请求栏后面的图标表示响应的一些特征。例如,软盘图标表示响应文本是本地获取的,即服务器返回304;
闪电表示这是Fiddler的“自动回复器”的回应;
向下箭头表示响应为302,需要重定向;
红色感叹号表示此请求中出现错误(状态代码为4XX或5XX)。
特别是,如果请求栏后面有一个红色的X,表示服务器在响应请求后已经断开连接。
这种情况通常有两种可能性:
没有连接:保持活动状态;在HTTP/1.0的响应中;
或者HTTP/1.1的响应包含Connection: close。
使用持久连接不仅可以节省建立连接的开销,还可以减少TCP慢启动等拥塞控制机制的影响。总之有很多好处。
请求前面的红色圆圈表示该连接是新创建的,绿色圆圈表示它被重用。
上面的圆圈表示浏览器和Fiddler之间的连接,下面的圆圈表示Fiddler和服务器之间的连接。
提琴手的状态面板
在控制台Fiddler的左下角,有一个名为QuickExec的命令行工具,可以直接输入命令。
常用的Fiddler命令有:
命令解释
帮助打开官方页面介绍,所有的命令将被列出
Cls清除屏幕(Ctrl x也可以清除屏幕)
选择命令以选择会话
?png用于选择带png后缀的图片
Bpu拦截请求
Bpafter截获响应
请求消息的结构
响应消息的结构
提琴手的常见功能
提琴手倾听HTTPS
默认情况下,提琴手不仅可以监听HTTP请求,还可以捕获HTTPS请求。将其设置在工具-拨浪鼓选项-HTTPS下,并选中“解密HTTPS流量”。如果不需要监听服务器端证书错误,可以勾选“忽略服务器认证错误”,或者跳过几个指定的HOST来缩小或扩大监听范围。
主机开关
模拟各种场景
通过GZIP压缩测试性能
模拟代理测试,查看服务器是否为不同的客户端定制了响应
模拟慢速网络,测试页面的容错能力
禁用缓存,这便于调试一些静态文件或测试服务器响应
根据某些场景自定义规则
低速仿真有时会考虑兼容性或者优化某个地方的性能,在低速仿真时很容易发现问题和性能瓶颈。遗憾的是,其他调试工具无法提供低速环境,强大的Fiddler考虑到了这一点,可以为低速模拟设置规则性能模拟调制解调器速度。
比较(比较文本)
作曲家(构造者)
顾名思义,请求构造就是我们可以模拟请求,也就是说我们可以在不改变开发环境实际代码的情况下修改请求中的参数值,方便的再次调用请求,然后Composer两个请求响应的具体区别。只要任何一个请求参数有合法的值,再次被调用后都会有相应的响应,所以你想要的任何合法的请求组合自然都可以根据你的意愿来构造,然后再次被调用,返回的数据就可以查看了。
用鼠标左键点击请求,拖动到Fiddler右侧的Request Builder标签中,将原来的请求参数OutPutType=JSON修改为OutPu tType=XML,然后点击Execute按钮再次触发调用请求
双击此请求包,在“检查器”标签下以XML格式查看返回的数据,JSON格式列为空:
过滤器(过滤器监控)
抓取重新加载的页面。如果包裹里物品太多,而你需要注意的物品只有几件,你可以使用Fiddler的Filters抓取包裹,那么只有那些你想抓取的包裹才会被抓取。切换到过滤器选项卡,并选中使用过滤器激活过滤器,以便可以选择以下过滤方法。
自动回复(请求重定向)
所谓请求无非是一些需要调用的资源(包括JS、CSS和图片等)。),所谓重定向就是将页面原本需要调用的资源指向其他资源(可以控制的资源或者可以引用的资源)。
您可以制作前台服务器的许多或某个资源的本地副本。如果在正常的网络访问环境下,开发环境由于资源中的bug而崩溃,可以先将这个资源的请求重定向到本地副本,这样就可以继续开发和调试页面,从而节省了大量的资源维护等待时间。
也可以同时复制一个多人维护的JS文件。当你的开发和调试收到别人调试代码的干扰时,可以将JS调用重定向到本地未受干扰的JS文件进行无干扰开发。功能开发完成,调试OK后,仔细将自己的代码集成到开发环境中,这样可以避免别人的干扰,专心于自己的模块开发,也就是说可以将JS文件从开发环境中分离出来,而不影响在线调试。
您也可以在本地指向样式文件或图片。
提琴手移动终端抓包
Fiddler不仅可以拦截来自各种浏览器的HTTP请求,还可以拦截来自各种智能手机的HTTP/HTTPS请求。
Fiddler可以捕获IOS、Andriod、WinPhone等设备发送的请求,也可以拦截IPad、MacBook等设备发送的HTTP/HTTPS。
前提是安装Fiddler的机器和IPhone在同一个网络,否则Iphone无法向Fiddler的机器发送HTTP。
具体操作步骤如下:
提琴手设置打开提琴手,工具-提琴手选项。(配置后记得重启提琴手)。
选择“允许远程计算机连接”允许其他机器向Fiddler发送HTTP/HTTPS请求
获取菲德尔所在机器的IP地址
安装Fiddler证书的目的是使Fiddler能够捕获HTTPS请求。如果只需要拦截HTTP请求,可以忽略这一步
首先要知道Fiddler所在机器的IP地址:如果安装Fiddler的机器的IP地址是:192.168.1.104,打开IPhone的Safari,访问http://192.168.1.1043360888,点击FiddlerRoot证书’安装证书。
打开IPhone,找到你的网络连接,打开HTTP代理,输入Fiddler机器的IP地址(比如:192.168.1.104)和Fiddler的端口号8888
以上是对捕获工具Fiddler的使用的详细介绍。更多关于Fiddler使用的文章,请点击下面的相关文章链接
版权声明:包抓取工具FIDLER使用的详细说明(FIDLER中文教程)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。