Your SlideShare is downloading. ×

Fiddler使用技巧

11,422

Published on

Fiddler使用技巧

Fiddler使用技巧

Published in: Technology
3 Comments
20 Likes
Statistics
Notes
  • 請問...有無辦法透過Fiddler 修改來源的URL?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • nice
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Fiddler使用技巧教學
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
11,422
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
233
Comments
3
Likes
20
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 李明 @Bencalie2011-05-04 1
  • 2. 主要内容 一、Fiddler 简介 二、Fiddler 使用技巧 三、使用脚本化的规则来扩展 Fiddler 四、几个常见问题 此分享基亍 Fiddler Web Debugger V2.3.3.0 2
  • 3. 一、Fiddler 简介 什么人需要它? · 前端开发工程师 · 线上故障支持人员 · 页面制作及接口开发 · Web 安全人员 3
  • 4. 一、Fiddler 简介 Fiddler 到底是什么? 4
  • 5. 一、Fiddler 简介 · HTTP/HTTPS Web Debugger · A proxy server · Extremely extensible · Written in C# · It’s free 5
  • 6. 一、Fiddler 简介 · HTTP/HTTPS Web Debugger · A proxy server · Extremely extensible · Written in C# · It’s free 6
  • 7. 一、Fiddler 简介 工作原理 防火墙CryptoAPI WinHTTP OfficeInternet CorpNET WinINET Fiddler weibo.comExplorer Proxy Chrome Safari Firefox 7
  • 8. 一、Fiddler 简介 B/S 模型 向右箭头代表上行数据,向左箭头代表下行数据 高速路代表互联网连接,小商庖代表服务器数据 8
  • 9. 一、Fiddler 简介 代理IP 127.0.0.1:8888 9
  • 10. 一、Fiddler 简介 · HTTP/HTTPS Web Debugger · A proxy server · Extremely extensible · Written in C# · It’s free 10
  • 11. 一、Fiddler 简介 · HTTP/HTTPS Web Debugger · A proxy server · Extremely extensible · Written in C# · It’s free 11
  • 12. 一、Fiddler 简介 · HTTP/HTTPS Web Debugger · A proxy server · Extremely extensible · Written in C# · It’s free 12
  • 13. 一、Fiddler 简介 主要能力 · 分析页面性能 · 分析 HTTP 请求/响应数据 · 设置断点,调试线上错误 · 伪造数据请求,调试数据接口 13
  • 14. 一、Fiddler 简介 主要能力 ② 分析数据 ① 捕获数据 ③ 修改数据 14
  • 15. 一、Fiddler 简介 安装 · MS .Net Framework v2.0+ · http://www.fiddler2.com/ 15
  • 16. 一、Fiddler 简介 工具栏 会话列表 任务面板 状态栏 16
  • 17. 一、Fiddler 简介 从左至右,依次是: 会话编号、HTTP状态、协议、域名、地址、响应BODY大小、 缓存、响应类型、来自进程及端口号、备注、自定义数据 17
  • 18. 一、Fiddler 简介 命令行 ALT+Q > type HELP… 选择类:?text、>size、<size、=status、@host、 blod text、select、allbut、keeponly 断点类:bpafter、bps、bpv、bpm、bpu 控制类:hide、start、stop、show、quit 其他:cls/clear、dump、g/go、help、urlreplace 18
  • 19. 一、Fiddler 简介 任务面板部分 让我们进入第二部分 19
  • 20. 二、Fiddler 使用技巧 从主要能力说起 ① 数据捕获 ② 数据分析 ③ 设置断点,修改数据 ④ 辅助功能 20
  • 21. 二、Fiddler 使用技巧 —— ① 数据捕获 为什么有时捕获丌到? · 检查软件 HTTP 代理设置 · 检查 Fiddler 捕获开关 · 检查过滤器设置 · ( localhost 是特殊情况,后面会提到 ) 21
  • 22. 二、Fiddler 使用技巧 —— ① 数据捕获 数据过滤 ·过滤级别 · Filter 面板 · Content Blocking 插件 22
  • 23. 二、Fiddler 使用技巧 —— ② 数据分析 数据分析 —— 请求分析面板 · Statistics 面板 · Inspectors 面板 · Timeline 面板 23
  • 24. 二、Fiddler 使用技巧 —— ② 数据分析 Buffering mode VS Streaming mode 开启流模式:工具栏 24
  • 25. 二、Fiddler 使用技巧 —— ② 数据分析 数据分析 —— 单个请求分析插件 · Syntax-Highlighting (语法高亮插件) · JavaScript Formatter (JS格式化) · HTML Inspector (.Net 3.5 HTML分析) · JSON Inspector (树状查看JSON数据) · XML Inspector (查看POST的XML数据) 25
  • 26. 二、Fiddler 使用技巧 —— ② 数据分析 数据分析 —— 多个请求分析插件 · neXpert Performance Report Generator (性能分析插件) · Traffic Differ (多个请求分析) · Gallery (多个选中请求中的图片预览) 26
  • 27. 二、Fiddler 使用技巧 —— ③ 设置断点修改数据 断点(BreakPoint) 在请求发出到服务器前(Before Requests)戒服务器 响应请求后(After Responses)中断请求,并做相应 的处理 Rules -> Automatic Breakpoints -> Before Requests Rules -> Automatic Breakpoints -> After Responses 命令行:bpafter、bps、bpv、bpm、bpu 27
  • 28. 二、Fiddler 使用技巧 —— ③ 设置断点修改数据 B/S 模型 黄点就是一个请求断点,蓝点就是一个响应断点 28
  • 29. 二、Fiddler 使用技巧 —— ③ 设置断点修改数据 修改数据 · AutoResponder面板 · RequestBuilder面板 29
  • 30. 二、Fiddler 使用技巧 —— ③ 设置断点修改数据 修改数据 —— 插件 · Delayed Responses (将请求延迟响应) · Stave/UrlReplace (请求转向) · Willow (请求转向) · Local Override (请求转向) 30
  • 31. 二、Fiddler 使用技巧 —— ④ 辅助功能 辅助功能——HOST修改 优点:无需重启浏览器 开启:Tools -> HOSTS… 另一种办法,修改注册表 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersion Internet Settings] "DnsCacheTimeout"=dword:5 "ServerInfoTimeOut"=dword:5 31
  • 32. 二、Fiddler 使用技巧 —— ④ 辅助功能 辅助功能——模拟user-agent · 开启:Rules -> User-Agents · 可以编辑 Fiddler Rules 来增加/变更 (Rules -> Customize Rules) 32
  • 33. 二、Fiddler 使用技巧 —— ④ 辅助功能 辅助功能——模拟慢速网络 · 采用延时模拟,无法模拟浏览器并发连接数限制 · 开启: Rules -> Performance -> Simulate Modem speed · 缺点 :功能比较单一,推荐使用 NetLimiter、 Speed Simulator、Network Delay Simulator 33
  • 34. 二、Fiddler 使用技巧 —— ④ 辅助功能 辅助功能——字符编码解码 · 开启:Tools -> Text Encode/Decode… · 支持的编码: Base64编码解码 URL Encode/Decode 十六进制编码 Unicode编码解码 HTML实体化编码解码 UTF-7编码解码 Deflated 编码解码 34
  • 35. 三、使用脚本化的规则来扩展 Fiddler Fiddler 的扩展机制 · Fiddler 支持 Jscript.NET 引擎,可以很方 便的修改 CustomRules.js 来扩展。 · 修改后立即生效 · 开启:Rules -> Customize Rules… 35
  • 36. 三、使用脚本化的规则来扩展 Fiddler Fiddler 的扩展机制 Handles 类两个最重要的事件: OnBeforeRequest(oSession: Session) OnBeforeResponse(oSession: Session) 36
  • 37. 三、使用脚本化的规则来扩展 Fiddler OnBeforeRequest范例 // 将扩展名为 ASPX 的请求变成红色 if (oSession.uriContains(".aspx")) { oSession["ui-color"] = "red"; } // 将 POST 请求变成斜体 if (oSession.HostnameIs("www.fiddler2.com") && oSession.HTTPMethodIs("POST")) { oSession["ui-italic"] = "yup"; } 37
  • 38. 三、使用脚本化的规则来扩展 Fiddler OnBeforeRequest范例 // URL 中含有 "/sandbox/" 的请求发出前被中断 if (oSession.uriContains("/sandbox/")){ oSession.oFlags["x-breakrequest"] = "yup"; // x-breakrequest 标志标识创建一个断点,值yup无关紧要 } // 如果 Header 含有 cookie,就将请求变成紫色 if (oSession.oRequest.headers.Exists("Cookie")){ oSession["ui-color"] = "purple"; oSession["ui-bold"] = "cookie"; } 38
  • 39. 四、几个常见问题 关亍 localhost · IE9 RC 已经支持,无需额外处理 · 使用机器名代替 http://机器名/ · 使用 http://localhost./ · 使用 http://ipv4.fiddler/ · 使用 HOST 访问 · 使用本机 IP 访问 (命令行 ipconfig 查看) 39
  • 40. 四、几个常见问题 Mac/linux 使用 Fiddler 1、Windows (机器名:Winbox1) 上开启 Fiddler 2、Fiddler 选项 (Tools->Fiddler Options->Connections Tab) Allow remote computers to connect打勾 3、Mac/Linux 上设置代理为 Address: Winbox1 Port: 8888 40
  • 41. 四、几个常见问题 POST数据中文参数乱码问题 解决:打开注册表编辑器,找到 HKCUSoftwareMicrosoftFiddler2 在里面添加一个字符串值,名叫 HeaderEncoding, 值设置为默认编码,建议设成 GB18030 41
  • 42. 四、几个常见问题 意外死机戒者Fiddler异常退出后 无法上网 原因:Fiddler 异常退出,但是系统的代理仍然是 127.0.0.1:8888 解决办法:重新打开 Fiddler,正行关闭 42
  • 43. 四、几个常见问题 Fiddler 中文版 http://download.csdn.net/source/1619319 缺陷:丌能支持最新版本 43
  • 44. 相关话题 FiddlerCap 44
  • 45. 参考资料 · 官方帮助 · 官方视频 · 谷歌讨论组 · StackOverflow Q&A 45
  • 46. 题外话 值得尊敬的 Eric 仅仅去年,他就在 Fiddler 上投入了 $2500 (组件授 权用了 $1549,主机、带宽和 PKI 用了 $512,编译 器和其他工具用了 $433) Fiddler 越火, 自掏腰包就越多。 http://www.fiddler2.com/fiddler/donate.asp 有钱的捧个钱场,没钱的捧个人场 46
  • 47. 题外话 Bill Gates & Eric Lawrence 47
  • 48. THE END感谢我老婆精心设计的这套模板 48

×