По умолчанию Fiddler запускается как прокси-сервер, который фиксирует трафик, который проходит через него.
Когда вы запустите Скрипач на своем клиенте, ваш браузер передает запрос через Fiddler по пути на сервер. Если ваш клиент и сервер находятся на одном ПК, трафик, отправленный на localhost
или 127.0.0.1
, может обойти Fiddler из-за жестко заданных ограничений в .NET Framework (в браузерах такая проблема отсутствует).
Для решения этой проблемы, вы можете обновить код .NET, чтобы ударить одного из псевдонимов для localhost
, что Скрипач поддерживает, а именно: localhost.fiddler
или ipv4.fiddler
или ipv6.fiddler
.
Если Скрипач работает на сервере, и вы хотите, чтобы захватить запросы, сделанные кода на стороне сервера (например, исходящих запросов от ASP.NET), то вам необходимо настроить приложение ASP.NET для отправки его трафик Скрипач. Это связано с тем, что, когда Fiddler запускается, он настраивает текущего пользователя для отправки своего трафика на Fiddler, но ASP.NET работает внутри учетных записей Windows, а не внутри учетной записи текущего пользователя. Существует несколько способов захвата запросов, сделанных изнутри ASP.NET, но this blog post суммирует простейшие. Обновите соответствующий machine.config
(обычно 64-битную версию файла), чтобы содержать строку
<proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
Теперь, если Скрипач работает на другом сервере то вы должны настроить параметры прокси-сервера, чтобы указать на любую машину Fiddler работает, например,
<proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://MyFiddlerServer:8888" usesystemdefault="false" />
Привет Brain, если он находится в моем местном они, как вы предложили правильно. Но, пожалуйста, приложение, размещенное в среде QA/UAT/PROD, затем, как получить внутренний трафик. Оба приложения и службы WCF находятся на серверах differnet. – user2783742
ОК, просто замените URL-адрес QA или Prod-сервера на «localhost» в правилах. Итак, «MyQAServer: 8888» вместо «localhost: 8888». – Brian
Hi Brain, я пробовал с предложениями выше. Но не повезло. Может ли pls предложить, где именно мне нужно изменить, и мой secnario, у нас есть веб-приложения на серверах QA/UAT/PROD. Внутри этих веб-приложений используются некоторые службы WCF и службы asmx. Теперь я просматриваю эти веб-приложения QA/UAT/PROD на своем локальном ПК, а filddler устанавливается только на моем локальном ПК. В этом случае, как я могу захватить внутренние запросы WCF и asmx. Здесь нет совпадений моих локальных серверов, и ничего не будет в моем локальном, кроме браузера и скрипача. – user2783742