2013-09-25 3 views
0

Я занимаюсь трафиком, используя Fiddler для некоторых служб ASMX, которые вызывают другие службы ASMX. В этом случае у меня есть простая служба WCF, вызывающая эти службы ASMX. Он не будет фиксировать трафик. Единственная морщина заключается в том, что она использует IIS, а не IISExpress (http://localhost/Interface12Service/Interface12Service.svc). Как я могу захватить трафик WCF?Fiddler не захватывает трафик WCF, но фиксирует ASMX fine

ответ

0

Это может быть просто, что обманщик испытывает трудности получения трафика с локального хоста
Попробуйте изменить адрес для http://localhost./Interface12Service/Interface12Service.svc

(Обратите внимание на точку после локального хоста.) Это обычный хак для работы с Fiddler.

+0

Как установить это, если я отлаживаю службу IIS, и она подходит к тестовому клиенту IIS? Невозможно изменить URL-адрес. – user2471435

0

По умолчанию Fiddler не будет захватывать трафик. Если вы хотите, чтобы он захватил трафик, измените базовый адрес прокси-сервера клиента на имя вашего компьютера или на ваш IP-адрес (например: 127.0.0.1). Это должно сделать трюк. Если нет, попробуйте this.

+0

Кроме того, вы также можете использовать WireShark или попробовать [Charles proxy] (http://www.charlesproxy.com/). – CharlesAD

+0

Charles также является прокси-сервером и имеет те же ограничения, что и любой другой прокси. – EricLaw

5

Microsoft .NET Framework жестко запрограммирован на обход прокси для любого запроса http://localhost. Для того, чтобы захватить такие запросы в Скрипач или любой другой прокси-сервер, используйте

http://machinename:port/

или

http://localhost.fiddler:port/

в качестве целевого URL.

+0

Я не хотел верить, что это был ответ .. или это даже сработало ... но это так! –

0

Другая возможная проблема связана с клиентом WCF (сюда могут быть и другие клиенты, но я не уверен). Клиент может быть настроен не на использование прокси-сервера по умолчанию для компьютера, что заставляет клиент/приложение обходить захват Fiddler.

Для дальнейшего чтения: What is the purpose of usedefaultwebproxy in WCF.

Смежные вопросы