InsideHTTP

Wednesday, August 31, 2005

Fiddler Internals

Fiddler's source is still not public, but there were two columns in August's MSDN magazine that describe a lot of the interesting techniques used by Fiddler.

See: Take the Burden Off Users with Automatic Configuration in .NET for information on using Script Engines in .NET, as well as detailed information on how the Framework decides what proxy to use.

See: Get Closer to the Wire with High-Performance Sockets in .NET for techniques on writing a server (even a proxy server) in .NET. Fiddler uses the background-threadpool technique described, which works fine for the load Fiddler needs to handle.

Tuesday, August 30, 2005

Version 1.0.1 Released

Version 1.0.1 has been released as the next "Ship" version of Fiddler. You can download it from https://www.fiddlertool.com/Fiddler/version.asp

Updates include:

Fiddler will only try loading public, non-abstract types as Inspectors

UI-tweak: Double-click in status bar panels to enable/disable capturing or set automatic breakpointing.

Added Load Sessions option on File menu

Added new flags request-trickle-delay and response-trickle-delay

Fixed Windows Vista installation issue. Note Hex Inspector does not run on Vista.

Fixed startup code to show running instance if possible

New icons for 204/401/403/5xx/HEAD

New color choices for Find results

Prefaced all Fiddler-generated HTTP Response status lines with "Fiddler -"

Added Spoof IE6 to default rules

Updated so NTLM doesn't show "0" for second part of handshake.

Added support for TextEditor registry key respected by the "View in Notepad" button on Standard::TextView

Fixed JSEditor persistence on option screen

Fixed duplicate accelerator on Options dialog.

Monday, August 29, 2005

IE7 change

Justin writes about a change in IE7 HTML parsing that may impact your site if you use the BASE tag.

See http://weblogs.asp.net/justin_rogers/archive/2005/08/27/423841.aspx for details.

Thursday, August 18, 2005

Readers!

Wow, apparently some folks do read this after all. :-) I haven't figured out how to tell from the Blogger site, and there were so few comments...

Anyway, Splintor asked:

A cool thing would be a public wishlist, when we can see what you plan to add to the product, and suggest our own idea for improvements.

Another neat thing would be a public repository for Fiddler Inspectors.


Please file all feature requests in the "Feature Requests" forum at the top of http://www.fiddlertool.com/bbs/index.php.

Feel free to point to Inspectors in either the Feature Requests or Script Samples forums as well-- I only know of two or three inspectors that have been written, so I wasn't aware that these had any level of public support yet.

I'll try to put together a "What I'm planning" post in the future, but for the moment, here's the known list:

1> HTTPS support. Everyone wants this.
2> More powerful HTTP response generation architecture, probably integrating Meddler (http://www.fiddlertool.com/meddler/)
3> Better modularization of code to enable Proxy engine to be repurposed
4> Release source on GotDotNet
5> Better script editor
6> Wizard for simple rule construction
7> Form/QueryString inspector
8> Generic Syntax-Highlighting text inspector (CSS, HTML, XML, JS, etc)
9> Non-ActiveX hex editor

(I should probably mention that I'm really busy shipping IE7 as well. :)

Thanks, all!

Alpha, anyone?

I don't think anyone really reads this. But I post anyway. Sad.

It’s had about 10 minutes of testing, and it was coded at 1:30am, so please don’t expect miracles. :-)

Fiddler Alpha v1.0.0.7 uploaded to www.fiddlertool.com/dl/fiddleralpha.exe

It lists shortcutkeys in top-level menus instead of context-menus, and more importantly, it adds two new flags to control upload and download speed.

You can update your rules using the Rules | Customize Rules menu option.

static function OnBeforeRequest(oSession:Fiddler.Session)
{
//Delay 100ms after each kb sent to server
oSession["request-trickle-delay"] = "100";
}

static function OnBeforeResponse(oSession:Fiddler.Session)
{
// Delay 10ms after each kb sent to browser
oSession["response-trickle-delay"] = "10";
}

Please let me know how it works out.

Sunday, August 14, 2005

Beta 1.0.0.6 released

Beta Version 1.0.0.6 has been posted to http://www.fiddlertool.com/dl/fiddlerbeta.exe

v1.0.0.6
UI-tweak: Double-click in status bar panels to enable/disable capturing or set automatic breakpointing.

Fixed bug where adding http error info to oFlags collection would throw due to duplicate key

Fixed startup code to show already-running instance rather than annoying message

Prefaced all Fiddler-generated HTTP Response status lines with "Fiddler -"

Fiddler will only try loading public, non-abstract types as Inspectors

Thursday, August 11, 2005

IE Zones and Proxies: The surprising relationship

I wrote this a while ago, and couldn't find a good place to post it...

How does IE know that a Fully-Qualified domain name is part of your Intranet?
http://www.fiddlertool.com/fiddler/help/zonesandproxies.asp

Tuesday, August 02, 2005

New v1.0.0.5 Beta released

The new v1.0.0.5 beta is now available. Other than a slight cleanup of exception handling code, the major improvement is to add the "Load Sessions" option to the File menu. You can now reload a set of sessions previously saved with the "Save to Zip" option.