Michael Kniskern
Michael Kniskern

Reputation: 25260

How to display localhost traffic in Fiddler while debugging an ASP.NET application?

How do I display localhost traffic in Fiddler while debugging an ASP.NET application?

Upvotes: 80

Views: 59378

Answers (14)

Legends
Legends

Reputation: 22672

Using Fiddler v4:

  1. Check your IE proxy settings

IE->Tools->Internet Options->Connections->Lan Settings

IE Lan Settings

  1. Check your settings in Fiddler:

Fiddler -> Options-> Connections & Https

Check the Fiddler port, default is 8888 Fiddler port

  1. In Fiddler-Menu:

File -> Capture Traffic is checked

The following solution worked for me, when using a

  • HttpClient or
  • WebClient from inside an ASP.NET application.

Web.config

<system.net>
    <defaultProxy
                enabled = "true"
                useDefaultCredentials = "true">
      <proxy autoDetect="False" bypassonlocal="False" proxyaddress="http://127.0.0.1:8888" usesystemdefault="False" />
    </defaultProxy>

Code:

var resourceServerUri = new Uri("http://localhost.fiddler:YourAppServicePort");
var body = c.GetStringAsync(new Uri(resourceServerUri)).Result;



Check if your request actually reaches fiddler by customizing the Fiddler Rules script

Fiddler->Rules->Customize Rules

and hook into the OnBeforeRequest event:

static function OnBeforeRequest(oSession: Session) {

if (oSession.hostname.Contains("localhost:YourPortNumber")
{
 System.Windows.Forms.MessageBox.Show(oSession.hostname);  
} 

Or explicitly by setting a web proxy

WebClient wc = new WebClient();

WebProxy proxy = new WebProxy();
// try one of these URIs
proxy.Address = new Uri("http://127.0.0.1:8888");
proxy.Address = new Uri("http://hostname:8888");
proxy.Address = new Uri("http://localhost.fiddler");
proxy.Address = new Uri("http://ipv4.fiddler");
// https://en.wikipedia.org/wiki/IPv6
proxy.Address = new Uri("http://ipv6.fiddler");

proxy.BypassProxyOnLocal = false; wc.Proxy = proxy;
var b = wc.DownloadString(new Uri(YourResourceServerBaseAddress));

Upvotes: 4

bendewey
bendewey

Reputation: 40235

try using this:

http://ipv4.fiddler/folder

instead of

http://localhost/folder

this also works with ports

http://ipv4.fiddler:12345/folder

Here is link to fiddler documentation

http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/MonitorLocalTraffic

Upvotes: 88

charlie.mott
charlie.mott

Reputation: 361

If trying to catpure HTTPS traffic on a local machine from BizTalk using Fiddler, try using the WCF Adapter Proxy settings. I used an address of: http://localhost:8888/

Upvotes: 1

user1932039
user1932039

Reputation: 21

One of the possible solutions is remove the proxy settings in IE as follows.

       IE->Tools->Internet Options->Connections->Lan Settings->

disable following

  • Automatically detect settings
  • Use automatic configuration script

Upvotes: 2

mdonatas
mdonatas

Reputation: 1768

To make Fiddler work on localhost with IIS Express you should use this form of URL

http://localhost.fiddler:50262/

This puts correct Host header value (localhost) which satisfies IIS Express.

Upvotes: 52

David Norris-Hill
David Norris-Hill

Reputation: 301

Checking the "Use PAC Script" in Fiddler Options -> Connections worked for me when using IIS Express within a corporate intranet.

Upvotes: 3

long
long

Reputation: 414

You may use PC hostname instead of 127.0.0.1 or localhost

Upvotes: 3

akjal
akjal

Reputation: 201

Start Fiddler. Go to Tools--> Fiddler Options. Choose Connections tab. Check the 'USe PAC Script' option.

Now you will be able to monitor local traffic as well

Upvotes: 20

nikib3ro
nikib3ro

Reputation: 20596

Try with http://127.0.0.1. <-- note the . at the end

So you can still connect to Casini and debug easily (I'm currently debugging page on http://127.0.0.1.:1718/login/Default.aspx ).

Upvotes: 2

M4N
M4N

Reputation: 96561

Probably the easiest way to monitor traffic to localhost is to replace "localhost" with "localhost." in the browser's URL bar. E.g.

http://localhost./MyApp/default.aspx

Upvotes: 7

Michael Kniskern
Michael Kniskern

Reputation: 25260

For an ASP.NET web site project:

1) Right-click the project and select Property Pages
2) Select Start Options
3) Under the Server section, click the "Use custom server" and edit the Base URL by replacing localhost with your computer's name.

Upvotes: 12

m_vitaly
m_vitaly

Reputation: 11952

You should uncheck the checkbox:

Bypass proxy server for local addresses

Located at proxy configuration of Internet Explorer.

Upvotes: 2

Justin Niessner
Justin Niessner

Reputation: 245419

Check out this link...the 'workaround' is hacky, but it does work:

Tip for using Fiddler on localhost

Upvotes: 3

Jordan S. Jones
Jordan S. Jones

Reputation: 13883

Ensure that in your Fiddler Connections that localhost isn't in the "IE should bypass Fiddler for URLs that start with:" box.

Upvotes: 2

Related Questions