2016-04-21 2 views
2

Я попытался использовать Fiddler на окнах 10 x 64 и на Windows 7 Ultimate x86 в Oracle VM в качестве гостя, а также на выигрыше 10 с Fiddler2 и Fiddler4, FiddlerCore и Чарльз прокси.Fiddler не захватывает трафик с моего приложения C#

Эти (Fiddler2, 4, Core и Charles proxy) захватывают весь трафик из моих браузеров, включая даже запросы на обновление Visual Studio (или некоторые серверы VS VS), но все вышеупомянутые настройки терпят неудачу захватить трафик из моего приложения - запускается из отладочной или выпущенной папки или непосредственно из отладчика VS, как в x64, так и x86.

Я использую VS 2015, ориентируясь на .net 4.5 Также у меня нет полных прав администратора на ОС хоста (выигрыш 10), что может быть проблемой.

Также начинающий скрипач сначала и/или как администратор не будет работать. Также, начиная с моего приложения или VS, администратор также не работает.

Также редактирование machine.config не будет работать, нет даже секции .net (вероятно, в win10), я модифицировал .web.

Есть ли библиотека, которая будет регистрировать запросы и ответы на уровне приложений вместо уровня ОС?

+0

Какое приложение это? Делает ли это какие-либо звонки с помощью HTTP? –

+0

Да, только Http, GET и POST через сырые rwquests. – codingcoder

+0

Возможный дубликат [Fiddler Not Capturing Traffic из моего приложения C# в Windows 8] (http://stackoverflow.com/questions/18482769/fiddler-not-capturing-traffic-from-my-c-sharp-application-in- windows-8) –

ответ

4

Ваши запросы не проходят через прокси-сервер системы (который Fiddler изменяет, и именно так он перехватывает ваш трафик). Существует несколько способов настроить ваши приложения .NET, чтобы пройти через них. Fiddler documentation указывает его.

Но в основном:

  1. Укажите прокси-сервер в вашем ехе конфигурации:

    <configuration> 
    <system.net> 
        <defaultProxy> 
        <proxy bypassonlocal="false" usesystemdefault="true" /> 
        </defaultProxy> 
    </system.net> 
    </configuration> 
    
  2. вручную указать его по запросам:

objRequest = (HttpWebRequest)WebRequest.Create(url); 
    objRequest.Proxy= new WebProxy("127.0.0.1", 8888); 

Кроме того, МОС t .NET классы обходят прокси при доступе к localhost. В этом случае используйте ip4.fiddler в качестве хоста вместо localhost (или ipv6.fiddle для IPv6)

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