Wie kann der Localhost-Verkehr in Fiddler beim Debuggen einer ASP.NET-Anwendung angezeigt werden?

Antworten:

87

Versuchen Sie Folgendes:

http://ipv4.fiddler/folder

anstatt

http://localhost/folder

Dies funktioniert auch mit Ports

http://ipv4.fiddler:12345/folder

Hier ist ein Link zur Fiddler-Dokumentation

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

Bendewey
quelle
Hinweis: Dies ist nur für IE und nur für IE8 und früher erforderlich. <= IE8 war so schlau, dass man wusste, dass man keinen Proxyserver für den lokalen Verkehr verwenden möchte! Es sieht also 'localhost' in Ihrer URL und kümmert sich nicht um Ihre albernen Proxy-Server-Einstellungen. So greift Fiddler ein.
Scott Stafford
52

Damit Fiddler mit IIS Express auf localhost funktioniert, sollten Sie diese URL verwenden

http://localhost.fiddler:50262/

Dadurch wird der korrekte Host-Header-Wert (localhost) angegeben, der IIS Express erfüllt.

mdonatas
quelle
Dies war ein Vergnügen für mich, als ich versuchte, den Import von Excel-OData-Feeds von meiner Testsite zu verwenden, die unter Visual Studio / IIS Express ausgeführt wurde.
Keith Hill
Schlug meinen Kopf gegen die Wand, das funktionierte auch für mich super !! Vielen Dank!
12.
Dies funktioniert für lokal gehostete IIS Express Asp.net-Web-API. Prost.
Raghu
19

Starten Sie Fiddler. Gehen Sie zu Extras -> Geigeroptionen. Wählen Sie die Registerkarte Verbindungen. Aktivieren Sie die Option "PAC-Skript verwenden".

Jetzt können Sie auch den lokalen Verkehr überwachen

akjal
quelle
1
Ich hatte Probleme beim Hinzufügen der. mit SSl und unserem Firmen-Proxy, aber das Ändern dieser Einstellung hat den Trick getan. Vielen Dank!
Ausgerichtet
12

Für ein ASP.NET-Websiteprojekt:

1) Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie Eigenschaftenseiten.
2) Wählen Sie Startoptionen.
3) Klicken Sie im Abschnitt Server auf "Benutzerdefinierten Server verwenden" und bearbeiten Sie die Basis-URL, indem Sie localhost durch den Namen Ihres Computers ersetzen.

Michael Kniskern
quelle
7

Der wahrscheinlich einfachste Weg, den Verkehr zu localhost zu überwachen, besteht darin, "localhost" durch "localhost" zu ersetzen. in der URL-Leiste des Browsers. Z.B

http://localhost./MyApp/default.aspx
M4N
quelle
3

Schauen Sie sich diesen Link an ... die 'Problemumgehung' ist hackig, aber es funktioniert:

Tipp für die Verwendung von Fiddler auf localhost

Justin Niessner
quelle
Ich habe diese Methode ausprobiert und es wird ein Popup mit IE-Anmeldeinformationen angezeigt. Ich gebe meine AD-Benutzeranmeldeinformationen ein und erhalte eine HTTP 401.1-Anmeldung fehlgeschlagen.
Michael Kniskern
Ich gab eine Antwort mit einem Vorschlag in einem der Kommentare aus dem Blog-Beitrag.
Michael Kniskern
3

Sie können den PC-Hostnamen anstelle von 127.0.0.1 oder localhost verwenden

lange
quelle
3

Das Überprüfen des "PAC-Skripts verwenden" in den Fiddler-Optionen -> Verbindungen hat bei der Verwendung von IIS Express in einem Unternehmens-Intranet für mich funktioniert.

David Norris-Hill
quelle
Ich bin mir nicht sicher, was passiert ist, aber ich habe kürzlich Fiddler auf Version 4.6.2.2 aktualisiert und die Überprüfung von "Usa PAC Script" hat Fiddler tatsächlich daran gehindert zu arbeiten. Ich musste die Option deaktivieren, um die Dinge wieder zum Laufen zu bringen ...
David Norris-Hill
3

Verwenden von Fiddler v4:

  1. Überprüfen Sie Ihre IE-Proxy-Einstellungen

IE-> Extras-> Internetoptionen-> Verbindungen-> LAN-Einstellungen

IE Lan-Einstellungen

  1. Überprüfen Sie Ihre Einstellungen in Fiddler:

Fiddler -> Optionen-> Verbindungen & HTTP

Überprüfen Sie den Fiddler-Port. Der Standardwert ist 8888 Geigenhafen

  1. Im Fiddler-Menü:

Datei -> Datenverkehr erfassen ist aktiviert

Die folgende Lösung hat bei der Verwendung von a für mich funktioniert

  • HttpClient oder
  • WebClient aus einer ASP.NET-Anwendung heraus.

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;



Überprüfen Sie, ob Ihre Anfrage tatsächlich Fiddler erreicht, indem Sie das Skript Fiddler Rules anpassen

Fiddler-> Regeln-> Regeln anpassen

und haken Sie sich in das OnBeforeRequest- Ereignis ein:

static function OnBeforeRequest(oSession: Session) {

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

Oder explizit durch Festlegen eines Webproxys

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));
Legenden
quelle
2

Stellen Sie sicher, dass in Ihren Fiddler-Verbindungen localhost nicht im Feld "IE sollte Fiddler für URLs umgehen, die mit: beginnen" enthalten ist.

Jordan S. Jones
quelle
1
Der "IE sollte Fiddler für URLs umgehen, die mit beginnen" ist leer.
Michael Kniskern
2

Sie sollten das Kontrollkästchen deaktivieren:

Proxyserver für lokale Adressen umgehen

Befindet sich in der Proxy-Konfiguration von Internet Explorer.

m_vitaly
quelle
2

Versuchen Sie es mit http://127.0.0.1 . <- Beachten Sie die. Am Ende

Sie können also weiterhin eine Verbindung zu Casini herstellen und problemlos debuggen (ich debugge derzeit die Seite unter http://127.0.0.1.:1718/login/Default.aspx ).

nikib3ro
quelle
Wenn localhost. Antwort
klappt
2

Eine der möglichen Lösungen besteht darin, die Proxy-Einstellungen im IE wie folgt zu entfernen.

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

Deaktivieren Sie Folgendes

  • Einstellungen automatisch ermitteln
  • Verwenden Sie das automatische Konfigurations-Skript
user1932039
quelle
1

Wenn Sie versuchen, den HTTPS-Verkehr auf einem lokalen Computer von BizTalk mit Fiddler zu erfassen, verwenden Sie die Einstellungen für den WCF-Adapterproxy. Ich habe eine Adresse verwendet von:http://localhost:8888/

charlie.mott
quelle
Mi hijo und seine Frau mussten eine Katze pur kaufen, weil sie mit einem weiteren gato letzten nacht nach Hause kam.
B. Clay Shannon