Fiddler is an extremely useful tool for debugging any web traffic on Windows environments. From their website:
Fiddler is a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet. Fiddler allows you to inspect all HTTP(S) traffic, set breakpoints, and “fiddle” with incoming or outgoing data. Fiddler includes a powerful event-based scripting subsystem, and can be extended using any .NET language.
I originally used Fiddler back the early days with Internet Explorer, but have recently picked it up again for use with several different browsers. Although some browsers have more native capabilities now (like Firefox with FireBug), using Fiddler consistently makes it a bit easier to concentrate on the problem at hand rather than the tool itself. Fiddler can also handle and decode HTTPS traffic now.
Setting up Fiddler with different browsers is pretty straightforward:
- Internet Explorer: No changes needed; when Fiddler is running it will automatically pick up all IE traffic
- Google Chrome: Same as IE (automatic)
- Apple Safari: Same as IE (automatic)
- Opera: Same as IE (automatic), but may need to start Fiddler before Opera
- Firefox: Change network options to use the HTTP proxy at address 127.0.0.1, port 8888; also see the Fiddler Firefox addon
- Curl: Curl from the command line is very useful when testing webservices; to route through Fiddler, just include the proxy option like
- Other Apps: See the Configuring Clients help page for any other application which lets you configure a proxy
- Mac/Linux: For cases where you need to debug on a different platform, you can still route traffic through Fiddler on a Windows system; after starting Fiddler, set up the application on Mac/Linux to use the proxy at windowshost:8888
For more background and “how-to” guides to get started with Fiddler, check out the Fiddler help page.