Як відобразити трафік localhost у Fiddler під час налагодження програми ASP.NET?


Відповіді:


87

спробуйте використати це:

http://ipv4.fiddler/folder

замість

http://localhost/folder

це також працює з портами

http://ipv4.fiddler:12345/folder

Ось посилання на документацію скрипаля

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


Примітка: Це потрібно лише для IE, і лише IE8 та раніше. <= IE8 був настільки розумним, що ЗНАЙТЕ, що ви не хочете використовувати проксі-сервер для локального трафіку! Отже, він бачить "localhost" у вашій URL-адресі і не турбується з вашими безглуздими налаштуваннями проксі-сервера, саме так підключається Скрипаль.
Скотт Стаффорд,

52

Щоб Fiddler працював на localhost із IIS Express, слід використовувати цю форму URL-адреси

http://localhost.fiddler:50262/

Це додає правильне значення заголовка хосту (localhost), яке відповідає службі IIS Express.


Це спрацювало для мене, намагаючись використовувати імпорт стрічки Excel OData з мого тестового сайту під управлінням Visual Studio / IIS Express.
Кіт Хілл

Стукав головою об стіну, це теж добре працювало для мене !! Дякую!
sǝɯɐſ

Це працює для веб-API API Asp.net, розміщеного на місцевому рівні IIS express. ура.
Raghu

19

Запустіть Скрипаль. Перейдіть до Інструменти -> Параметри скрипта. Виберіть вкладку З'єднання. Позначте опцію 'USe PAC Script'.

Тепер ви також зможете стежити за місцевим трафіком


1
У мене були проблеми з додаванням. з SSl та проксі-сервером наших компаній, але зміна цього параметра зробила свою справу. Дякую!
AlignedDev

12

Для проекту веб-сайту ASP.NET:

1) Клацніть проект правою кнопкою миші та виберіть Сторінки властивостей
2) Виберіть Параметри запуску
3) У розділі Сервер натисніть «Використовувати власний сервер» та відредагуйте базову URL-адресу, замінивши localhost на ім'я вашого комп'ютера.


7

Напевно, найпростіший спосіб контролювати трафік до localhost - це замінити "localhost" на "localhost". в рядку URL-адреси браузера. Напр

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

3

Ознайомтеся з цим посиланням ... "обхідний шлях" є хитрим, але він працює:

Порада щодо використання Fiddler на localhost


Я спробував цей метод, і він підказує мені спливаюче вікно облікових даних IE. Я вводжу свої облікові дані користувача AD і отримую помилку входу HTTP 401.1.
Майкл Кніскерн,

Я дав відповідь із пропозицією в одному з коментарів до допису в блозі.
Майкл Кніскерн,

3

Ви можете використовувати ім’я хосту ПК замість 127.0.0.1 або localhost


3

Перевірка "Використовувати скрипт PAC" у "Параметри скрипта" -> "З'єднання" працювала для мене під час використання IIS Express у корпоративній інтрамережі.


Добре не впевнений, що сталося, але нещодавно я оновив fiddler до v4.6.2.2 і перевірка "Usa PAC Script" насправді зупинила fiddler працювати. Мені довелося зняти прапорець, щоб все знову запрацювало ...
Девід Норріс-Хілл

3

Використання Fiddler v4:

  1. Перевірте налаштування проксі IE

IE-> Інструменти-> Властивості браузера-> З'єднання-> Налаштування мережі

Налаштування IE Lan

  1. Перевірте свої налаштування в Fiddler:

Fiddler -> Параметри-> З'єднання та HTTP

Перевірте порт Fiddler, за замовчуванням 8888 Скрипковий порт

  1. У меню Fiddler:

Файл -> Захоплення трафіку встановлено

Наступне рішення спрацювало для мене при використанні

  • HttpClient або
  • WebClient зсередини програми ASP.NET.

Web.config

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

Код :

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



Перевірте, чи дійсно ваш запит потрапляє до скрипта, налаштувавши сценарій правил скрипта

Скрипаль-> Правила-> Налаштування правил

і підключіться до події OnBeforeRequest :

static function OnBeforeRequest(oSession: Session) {

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

Або явно, встановивши веб-проксі

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));

2

Переконайтеся, що у вашому Fiddler Connections, що localhost відсутній у полі "IE повинен обходити Fiddler для URL-адрес, які починаються з:".


1
"IE повинен обходити Fiddler для URL-адрес, які починаються з", порожній.
Майкл Кніскерн,

2

Ви повинні зняти прапорець:

Обхід проксі-сервера для локальних адрес

Розташований у проксі-конфігурації Internet Explorer.


2

Спробуйте використати http://127.0.0.1 . <- зверніть увагу на. в кінці

Таким чином, ви все одно можете легко підключитися до Casini та налагоджувати (я зараз налагоджую сторінку на http://127.0.0.1.:1718/login/Default.aspx ).


Якщо localhost. відповідь не виходить у вас (як не в мене)
nikib3ro

2

Одне з можливих рішень - видалити налаштування проксі-сервера в IE наступним чином.

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

відключити наступне

  • Автоматично визначати налаштування
  • Використовуйте сценарій автоматичної конфігурації

1

Якщо ви намагаєтеся перехопити трафік HTTPS на локальній машині від BizTalk за допомогою Fiddler, спробуйте скористатися налаштуваннями проксі-адаптера WCF. Я використав адресу:http://localhost:8888/


Mi hijo und dessen Frau довелося купити трохи кота чистого, тому що вони прийшли додому з черговим gato letzte nacht.
Б. Клей Шеннон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.