powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
6 сообщений из 6, страница 1 из 1
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38884411
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.

Fiddler не перехватывает сообщения WCF в Windows.

Для того, чтобы Fiddler работал под Windows 8 нужно дать специальные права, с помощью программы EnableLoopback Utility. Но вот беда - в ней не отображается WCF приложение. Ни сервер, ни клиент.
http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureFiddlerForWin8

В документации к Fiddler'у указанно, что чтобы так подключить Unit Test'ы - нужно нажимать кнопку refresh в EnableLoopback Utility во время выполнения тестов. Так удастся поймать момент, когда студия появится в утилите.
"To allow Unit Tests in Visual Studio 2012 to send traffic to Fiddler, click the AppContainer Loopback Exemption Utility Refresh button while the Unit Test is running. An AppContainer for the Unit Test will appear. Check the box for this AppContaine"

Ок. Пытаюсь сделать подобное для WCF. Запустил в бесконечный цикл вызов сервиса клиентом (сервис хостится в IIS на локальной машине) и тупо жму кнопку refresh, в ожидании сервиса, или клиента. Результата нет... Не появляется.

Глупо как-то.
Подскажите пожалуйста, как настроить Fiddler на работу с WCF в Windows 8.
...
Рейтинг: 0 / 0
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38884450
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробовал вот эту инструкцию...
http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy

Не заработало... Прописал и в клиента и в сервера
Код: xml
1.
2.
3.
4.
5.
  <system.net>
    <defaultProxy>
      <proxy  autoDetect="False" bypassonlocal="False" usesystemdefault="True" proxyaddress="http://127.0.0.1:8888" />
    </defaultProxy>
  </system.net>



В IIS задал порт 80 для сайта.

Правда не понял смысл вот этого скрипта:
Код: xml
1.
if (oSession.host.toLowerCase() == "webserver:8888") oSession.host = "webserver:80";
...
Рейтинг: 0 / 0
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38885192
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решено.

В клиенте и сервере прописать
<system.net>
<defaultProxy>
<proxy autoDetect="False" bypassonlocal="False" usesystemdefault="True" proxyaddress=" http://127.0.0.1:8888" />
</defaultProxy>
</system.net>

В Fiddlere прописать прослушивание этого порта (см статью).

И еще, важно, в конфиге указывать адрес сервера не через lockalhost а явно прописывая имя своей машины (типа http://mycomp:2222/MyService). Вроде как fiddler не отлавливает данные, которые идут от lockalhost к lockalhost (или это винда так делает).
...
Рейтинг: 0 / 0
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38885374
Фотография windrider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже в эту ветку форума заходят очень редко.
У меня вопрос, в локалке стоит прокси, с адресом, портом, соответственно логин пароль. Как в конфиге это все прописать, что бы клиент правильно проходил прокси при обращении к внешнему сервису?
...
Рейтинг: 0 / 0
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38885431
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
windrider,

С таким не сталкивался еще пока. Но, возможно, Вам, как раз вот эти параметры и нужно выставлять:

Код: xml
1.
2.
3.
4.
5.
  <system.net>
    <defaultProxy>
      <proxy  autoDetect="False" bypassonlocal="False" usesystemdefault="True" proxyaddress="http://127.0.0.1:8888" />
    </defaultProxy>
  </system.net>


может там еще какие-то полезные атрибуты, кроме этих используемых, есть.
...
Рейтинг: 0 / 0
Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
    #38885554
МихаилР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotekВроде как fiddler не отлавливает данные, которые идут от lockalhost к lockalhost (или это винда так делает).
Это особенность WinHttp - все запросы на 127.0.0.1 и localhost идут в обход proxy.
Поэтому, чтобы отлаживать Http запросы от WCF, достаточно:
- использовать при обращении к сервису имя машины (но тут могут быть проблемы с IIS Express - почему-то по умолчанию он слушает не все интерфейсы, а только локальный. Вроде можно это поменять, но тогда меняется простота работы, как при использовании по умолчанию)
- указать в конфиге useDefaultWebProxy="True".

Fiddler в момент начала перехвата меняет системные настройки WinHTTP, которые и есть тот самый Default Web Proxy
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Не получается заставить Fiddler перехватывать сообщения WCF. Windows 8.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]