Podczas używania programu Fiddler do monitorowania żądań i odpowiedzi HTTP w programie Internet Explorer ignoruje cały ruch kierowany do http: // localhost .
Podczas używania programu Fiddler do monitorowania żądań i odpowiedzi HTTP w programie Internet Explorer ignoruje cały ruch kierowany do http: // localhost .
Odpowiedzi:
Aby Fiddler przechwytywał ruch podczas debugowania na hoście lokalnym, po naciśnięciu klawisza F5 w celu rozpoczęcia degugowania zmień adres, tak aby host lokalny miał znak „.” po tym.
Na przykład, zaczynasz debugowanie i masz następujący adres URL w pasku adresu:
http: // localhost: 49573 / Default.aspx
Zmień to na:
http://localhost.:49573/Default.aspx
Wciśnij Enter, a Fidder zacznie zbierać ruch.
Witryna Fiddlera odnosi się bezpośrednio do tego pytania .
Istnieje kilka sugerowanych obejść, ale najprostszym jest po prostu użycie nazwy komputera zamiast „localhost” lub „127.0.0.1”:
http://machinename/mytestpage.aspx
localhost.
jako nieprawidłową nazwę hosta.
localhost.
i machinename
jest odrzucony w moim przypadku.
Prawidłowa odpowiedź jest taka, że Fiddler nie ignoruje ruchu skierowanego do lokalnego hosta, ale raczej to, że większość aplikacji jest zakodowana na stałe w celu ominięcia serwerów proxy (z których Fiddler jest jednym) dla żądań skierowanych do hosta lokalnego.
Stąd różne dostępne obejścia: http://fiddler2.com/documentation/Configure-Fiddler/Tasks/MonitorLocalTraffic
Fiddler v4.5.1.0 pozwoli ci zamienić „localhost” na „localhost.fiddler” i przedstawić localhost jako nazwę hosta serwera odbierającego działającego na twojej maszynie.
Pozwala to uniknąć błędów „host nierozpoznany” podczas łączenia się z usługami WCF za pomocą wbudowanego serwera sieci Web, z którego korzysta program Visual Studio.
tj. Zamiast
http://localhost:51900/service.wcf
możesz użyćhttp://localhost.fiddler:51900/service.wcf
Internet Explorer ma nową funkcję od czasu IE9 RC: dodanie <-loopback>
do listy pomijania proxy powoduje, że WinInet (biblioteka sieciowa używana przez IE) wysyła żądania przeznaczone do localhost
i 127.0.0.1
przez zdefiniowane proxy.
Oto oryginalne ogłoszenie @EricLaw: http://blogs.msdn.com/b/fiddler/archive/2011/02/10/fiddler-is-better-with-internet-explorer-9.aspx
Używając Fiddlera w wersji 4.6 i domyślnej konfiguracji, nie można było zobaczyć żadnego ruchu z „localhost”. Próbowałem tutaj wielu sugestii, ale nic nie działało.
Włączono Pomoc -> Rozwiązywanie problemów i można było zobaczyć o wiele więcej żądań. Sesje zostały oznaczone przekreśloną czcionką, a podany powód brzmiał: „Ukryte ze względu na pasek stanu> Filtr procesu”.
Znalazłem tę odpowiedź od Erica Lawrence'a do osoby mającej ten sam problem http://www.telerik.com/forums/fiddler-not-capturing-ios-traffic-even-ho-echo-service-works
w zasadzie co należy zrobić: Spójrz na pasek stanu u dołu okna Fiddlera, drugi mały „zasobnik” na tym pasku prawdopodobnie mówi coś w rodzaju „Przeglądarki internetowe”. Kliknij to, a następnie zmień na „Wszystkie procesy”.
Możesz użyć http: //ipv4.fiddler lub http: //ipv6.fiddler zamiast localhost
Aby Fiddler mógł przechwytywać ruch z lokalnego hosta w lokalnych usługach IIS, istnieją 3 kroki (zadziałało na moim komputerze):
if ((m_EnableProxy) && !(oSession.host =="127.0.0.1" || oSession.host =="localhost" || oSession.host =="ipv4.fiddler")) { oSession["X-OverrideGateway"] = "socks=127.0.0.1:8080"; oSession["ui-backcolor"] = "#EFEF9F"; }
. Ta funkcja powinna być włączonaBeforeRequest.
Nie używaj localhost w adresie URL!
Użyj w ten sposób:
Zamiast tego użyj lokalnego adresu IP (nie 127.0.0.1), na przykład 192.16.0.88 itd. Przejdź do cmd.exe i wpisz ipconfig, a zobaczysz go.
Windows XP:
Pamiętaj, aby kliknąć przycisk ustawień dla każdego elementu w polu listy „Ustawienia połączeń telefonicznych i wirtualnej sieci prywatnej” na karcie „Połączenia” apletu panelu sterowania „Opcje internetowe”.
Zauważyłem, że Fiddler przestał używać konfiguracji „Ustawienia sieci LAN” po połączeniu się z moją siecią VPN. Nawet jeśli ruch nie przechodził przez VPN.
Ruch pojawi się w Fiddlerze pod adresem IP twojego komputera.
Przejdź do menu Narzędzia, Opcje skrzynek ..., wybierz kartę Połączenia, a następnie upewnij się, że zaznaczono opcję Monitoruj wszystkie połączenia. Jak powiedział Antony Scott, ale upewnij się, że okienko „Sesje internetowe” jest ustawione na „Przechwytywanie” i [„Przeglądarki internetowe” LUB „Wszystkie procesy”]. Wygląda na to, że wartością domyślną jest „Non-Browser”.