How to use Fiddler to debug traffic from Any app (eg. C#/WPF app)

Jiew Meng picture Jiew Meng · Oct 9, 2010 · Viewed 60.6k times · Source

I am tring to debug whats wrong with my HTTP requests from another question here on SO. So i read a bit about Fiddler and wanted to use it to debug my problem. But I can't seem to get traffic from my WPF application to go through Fiddler. I believe I need to configure a proxy. I am using a WebClient for a basic example, but I think i will require a WebRequest later. But for now, with a simple WebClient, how can I get it to go through Fiddler (I believe I have to set proxy to localhost:8888)?

UPDATE:

I don't know if i did the right thing or not but I tried

var wc = new WebClient();
WebProxy proxy = new WebProxy();
proxy.Address = new Uri("http://localhost:8888");
wc.Proxy = proxy;

but failed - I don't see any traffic in Fiddler

I tried ...

var wc = new WebClient();
WebProxy proxy = new WebProxy("127.0.0.1", 8888);
wc.Proxy = proxy;

still nothing

Answer

Jiew Meng picture Jiew Meng · Oct 9, 2010

I found the solution at this fiddler2.com page

Why don't I see traffic sent to http://localhost or http://127.0.0.1?

Internet Explorer and the .NET Framework are hardcoded not to send requests for Localhost through any proxies, and as a proxy, Fiddler will not receive such traffic.

The simplest workaround is to use your machine name as the hostname instead of Localhost or 127.0.0.1. So, for instance, rather than hitting http://localhost:8081/mytestpage.aspx, instead visit http://machinename:8081/mytestpage.aspx.