All versions of Fiddler support a rich extensibility model that enables developers to enhance Fiddler with new functionality useful for traffic inspection, analysis, and sharing. However, writing extensions that import traffic captured by other tools was difficult, and extensions that offered traffic export often extended the UI in confusing ways or failed to implement basic functionality like progress reporting and the like. As announced at the Velocity 2010 conference, Fiddler 18.104.22.168 now supports an Import/Export architecture which allows you to easily import traffic from other tools and export traffic to formats beyond the Fiddler-native Session Archive ZIP (SAZ) format. Fiddler includes “out of the box” support the following formats:
- HTTP Archive JSON
- HTTP Archive XML (exported from IE9 Developer Tools Network Tab)
- HTTP Archive JSON v1.1
- HTTP Archive JSON v1.2
- Visual Studio Web Test XML
- WCAT Load Test Script
- Raw Files
The two HTTP Archive JSON formats (*.har) are supported by a growing list of open-source and commercial tools and web services. The primary difference between v1.1 and v1.2 is that the newer format supports storage of non-textual response bodies. Because these HAR files are not compressed, Fiddler will only store non-textual content smaller than 32kb by default. This limit can be increased by setting the Fiddler Preference fiddler.importexport.HTTPArchiveJSON.MaxBinaryBodyLength.
Visual Studio Web Test XML and WCAT Load Test scripts are loadable by those tools to allow you to replay previously-captured requests for functional-testing and load-testing purposes. The Raw Files export format allows you to easily dump captured response files to a folder on disk; this allows you to easily collect audio, video, or image files for instance.
Beyond these default formats, developers can create their own Import and Export classes by implementing the appropriate interfaces using any .NET language. There’s no particular requirement that the classes store data in a file—you could build a class that saves or loads traffic from a local database or a data store in the cloud.
Developers of broadly useful Import/Export extensions can contact me to have them listed on the official Fiddler website.
I hope you will find this new functionality useful!