Fiddler 插件开发,使用 WPF 作为 UI 控件
Fiddler 插件的 UI,本身使用的 WinForm,这个例子是使用 WinForm 中的 WPF 容器,将 WPF 控件作为 Fiddler 插件的 UI 使用。
为什么使用 WPF ?为了自适应布局呀。
源代码可以参看此 Demo: JasonGrass/Fiddler.Demo: Fiddler 插件开发的 Demo
Fiddler 插件使用 .net framework 实现。
插件实现的几个关键点
- 1 继承 IAutoTamper 接口
此接口继承自 IFiddlerExtension,提供了 UI 的加载入口,并提供了 web 请求和响应的信息,可以做数据读取等操作。
IAutoTamper2 和 IAutoTamper3 接口分别扩展了 OnPeekAtResponseHeaders 和 OnPeekAtRequestHeaders 方法。
详见:
Implement Fiddler Interfaces | Progress Telerik Fiddler
- 2 UI (tab)
使用 FiddlerApplication.UI.tabsViews.TabPages.Add
方法向 Fiddler 的标签页中添加 TAB,当然,还可以使用 FiddlerApplication.UI
做更多 UI 相关的操作。
- 3 Log
可以使用 FiddlerApplication.Log
向 Fiddler 中的 Log 标签页输出日志信息。
详细内容,可以直接看源码。
JasonGrass/Fiddler.Plugin.SDK: Fiddler 插件开发 SDK
JasonGrass/Fiddler.Demo: Fiddler 插件开发的 Demo
如何调试
将生成目录中的文件,拷贝到 fiddler 的插件目录,如:
xcopy $(OutDir) C:\Users\JasonLiu\Documents\Fiddler2\Scripts /S /E /Y
然后附加到 fiddler 进程进行调试