Fiddler工具学习使用总结
1.初识fiddler:
作用:截获http/HTTPS请求,查看截获的请求内容,伪造客户端请求和服务器响应,测试网站性能,解密https的web会话,提供插件。
工作环境:支持素有操作系统和所有浏览器,对win有更好的支持。
2.
当打开fiddler后 浏览器中,工具>internet选项>连接>局域网设置高级>代理设置中 代理服务器地址被fiddler修改。
3.fiddler两种代理模式:
流模式(streaming) 缓冲模式(buffering)
流模式:fiddler会实时把服务器返回给客户端的数据返回给我们。流模式更接近于浏览器真实的行为。缓冲模式:fiddler会等待http请求所有的数据都准备好之后才会返回给应用程序。
4.使用场景:
1:开发环境host配置——通常情况下,配置host需改系统文件很不方便;在多个开发环境下切换很低效。fiddler提供了相对高效地host配置方法。
2:前后端接口调试——通常情况下,调试前后端接口需真实的环境、一大堆假数据、写js代码。Fiddler只需一个UI界面进行配置即可。
3:线上bugfix——Fiddler可将发布文件代理到本地,快速定位线上bug。
4:性能分析和优化。
5.工具条常用功能
1.给Fiddler捕捉到的会话增加一个备注
2.Replay:回放按钮, 通常来讲,捕捉,再回放。按快捷键R,就对一个请求做回放了.
3.X:清空监控面板,remove all 完全清空.
4.Go:调试Debug,在请求了断点的时候,让断点继续往下走,需要结合状态栏里的功能来使用
5.stream:模式切换按钮 ,流模式和缓冲模式,默认是缓冲模式
6.Decode:帮助我们把http里面的请求解压出来.
7.any process:过滤请求
6.状态栏
底部黑色条:控制台,可以在此输入一些命令行。输入help,获得指令
左一capturing:控制Fiddler是否工作
Web Browsers:过滤会话来源
左三,截断
左四,数字:记录当前展示的会话数量
7.监控面板
如何显示ServerIP:
在CustomRules文件中运用Ctrl+F查询 static function Main()
添加一行代码 FiddlerObject.UI.lvSession.AddBoundColumn("Server IP",120,"X-HostIP");,然后就能在最后一行看到ServerIP了。
Statistics:一个会话的统计信息 可以为优化提供依据
Inspectors: 对请求进行解包 可以查看相应的请求、响应信息
AutoResponder: 文件代理 可以把请求的资源用本地文件代理掉 方便调试线上文件。
Composer:前后端接口连调 可以用来伪造请求
Log:记录日志
Timeline:网站性能分析
8.fiddler文件,文件代理,host配置
Host配置:tools--hosts--选中enable...激活,再进行域名配置
请求ip会改变:
host
用Fiddler来配置Host:Tools -> HOST -> 打勾->添加规则->生效;去掉勾,保存,失效,或者直接关闭Fiddler也行。作用是把一个网站域名下所有的文件都映射到一台指定的服务器或者一个IP下。
文件替换
拖拽到AutoResponder,EXACT精准匹配(也可以用正则表达式进行模糊匹配),进行save后,可以直接将匹配的文件进行加载。 只映射一个文件,也可以替换响应,延迟等
9.fiddler请求模拟,前后端联调
请求的伪造:可以伪造Cookie
前后端连调:Composer -> 选择请求方式 GET -> copy 地址 参数-> excuete
400回复代表客户端请求错误
POST参数一般要放到RequestBody中
前端页面没有完成的情况下,后端可以用fiddler模拟http请求,联调接口
10.fiddler网络限速
网络限速
功能需要基于 fiddler 的插件
点击fiddlerScript 在代码里找到onBeforeRequest
FiddlerScript -> static function OnBeforeRequest ->
oSession["request-trickle-delay"]="3000";//请求阶段延迟
osession["response-trickle-delay"] = "3000";//请求立刻发出,回应延迟三秒
手机端网络限速方法:(待补全)
Save Script(保存脚本),发送请求
11.fiddler插件
插件很多,具体下载地址:https://www.telerik.com/fiddler/add-ons
JavaScript Formatter 代码格式化插件
Fiddler Add-ons 插件:javaScript formatter -> js文件右击 -> 选择 make javascript pretty -> textview / syntaxview 代码全部高亮显示
traffic differ (对比两个不同的对话): 直接拖进两个不同的请求,会显示完整的对比数据 -> 可以用来对比优化前后网站之间的不同
12.fiddler第三方插件
第三方插件:willow -> 快速管理host列表 完全可视化 http代理插件
可视化限速
因为没有开源,可以到http://pan.baidu.com/s/1mgocpBi进行下载体验
问题:.fiddler中文版下载插件无法使用。
解决方法:查看-显示控制台
然后输入
import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
未解决。
Fiddler工具学习使用总结的更多相关文章
- WebApi及Fiddler工具
WebApi及Fiddler工具 1.概述 曾经有人问:asp.net mvc和asp.net webapi区别在哪?这个其实不好回答的.可能因为mvc模式盛行的原因,webapi显得孤芳自赏了,让人 ...
- Fiddler工具详细介绍
百度看到Fiddler工具的详细介绍,转载收藏,侵权删,原文地址:http://blog.csdn.net/qq_21445563/article/details/51017605 前部分讲解Fidd ...
- web手工项目04-测试报告的核心内容-HTTP请求和响应-fiddler工具进行抓包
回顾 登录功能测试(需求分析(输入分析,处理分析,输出分析),数据构造,编写用例) 测试点设计思路--扩展(相关业务,特殊角度-分支,异常,逆向) 流程图元素与画法(开始/结束,路径,数据,判定,步骤 ...
- 『言善信』Fiddler工具 — 6、Fiddler界面布局详解【命令行和状态栏】
目录 1.命令行 2.状态栏 1.命令行 命令行在Fiddler的左下方的黑色窗口,也叫QuickExec,可以调用 Fiddler的内置命令. 这一系列内置的函数用于筛选和操作会话列表中的sessi ...
- Git版本控制工具学习
Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...
- sql server 内置ETL工具学习(一) BCP篇
sql server 内置ETL工具学习 常用的导入方式:bcp, BULK INSERT,OPENROWSET和 SSIS. BCP BCP全称BULK COPY PROGRAM 有以下特点: 命令 ...
- Fiddler - 工具配置及在ios抓取不了https的解决方法
一.首先,官网下载最新版fiddler工具: https://www.telerik.com/fiddler 二.打开fiddler,点击Tools - Options 我电脑上的各项配置如下图(也可 ...
- linux 工具学习网站
推荐一个很不错的linux工具学习网站; 对于一个开发人员来说,我觉得掌握这些工具对于基于linux的应用开发来说事半功倍. http://linuxtools-rst.readthedocs.io/ ...
- Fiddler的学习之路
Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 . 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试 ...
随机推荐
- 当Tomcat遇上Netty
故事背景 嘀嘀嘀~,生产事故,内存泄漏! 昨天下午,突然收到运维的消息,分部某系统生产环境内存泄漏了,帮忙排查一下. 排查过程 第一步,要日志 分部给到的异常日志大概是这样(鉴于公司规定禁止截图禁止拍 ...
- Appium自动化(9) - appium元素定位的快速入门
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 快速入门栗子:boss直聘 app ...
- js 获取table tr td内的select 和input text
$("#TableList tr").each(function () { //for (var i = 1; i <= AM_index; i ...
- 【Java】手把手理解CAS实现原理
先来看看概念,[CAS] 全称“CompareAndSwap”,中文翻译即“比较并替换”. 定义:CAS操作包含三个操作数 —— 内存位置(V),期望值(A),和新值(B). 如果内存位置的值与期望值 ...
- 基于postman测试接口(整套接口测试)
基于postman测试接口(整套接口测试) 可以解决的问题 几百个接口人工测试接口过于繁杂 大多测试无法使用请求结果当参数 可以使用随机参数 支持swagger信息导入 随账号持久化保存数据 对集合一 ...
- freemark+dom4j实现自动化word导出
导出word我们常用的是通过POI实现导出.POI最擅长的是EXCEL的操作.word操作起来样式控制还是太繁琐了.今天我们介绍下通过FREEMARK来实现word模板导出. 目录 开发准备 模板准备 ...
- 【Java8新特性】Stream API有哪些中间操作?看完你也可以吊打面试官!!
写在前面 在上一篇<[Java8新特性]面试官问我:Java8中创建Stream流有哪几种方式?>中,一名读者去面试被面试官暴虐!归根结底,那哥儿们还是对Java8的新特性不是很了解呀!那 ...
- js解析MarkDown语法
1.问题描述: 我们使用MarkDown编辑器之后,比如我们写的MarkDown的语法是: # 一级标题 ## 二级标题 ### 三级标题 这种语法我们最终要转换成HTML的格式最终要存入数据库 ...
- 国家集训队 部落战争 网络流最小路径覆盖 洛谷P2172
洛谷AC传送门! step1: 题目大意 有一张M x N的网格图,有一些点为“ * ”可以走,有一些点为“ x ”不能走,每走一步你都可以移动R * C 个格子(参考象棋中马的走法),且不能回头,已 ...
- [PHP自动化-进阶]005.Snoopy采集框架介绍
引言:Snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务. **官方网址:http://snoopy.sourceforge.net/** 简单一句话表达:& ...