Как перехватить трафик ASP.NET Development Server'а

пятница, 24 апреля 2009 г.,

Ситуация: ASP.NET Development Server работает по адресу http://localhost:3840; требуется перехватить все запросы и ответы сервера.

Решение:
1) во всех адресах заменить "localhost" на "ipv4.fiddler". Например, вместо http://localhost:3840/Provider.svc/Now указать http://ipv4.fiddler:3840/Provider.svc/Now
2) запустить Fiddler (см. Install Fiddler2).

Запросы можно увидеть в окне Fiddler'а во вкладке Session Inspector - Raw, а на ответы можно посмотреть в нижней части вкладки, также нажав Raw.

ASP.NET Development Server находится в C:\Program Files\Common Files\microsoft shared\DevServer\9.0\WebDev.WebServer.EXE; параметры передаются через командую строку, например: /port:3840 /path:"С:\Projects\Site" /vpath:"/".
Сам веб-сервер - это класс Microsoft.VisualStudio.WebHost.Server, который помещен в GAC (WebDev.WebHost.dll).
Путь к файлу можно выяснить с помощью Process Monitor'а (см. Sysinternals Process Utilities). Открыть файл в проводнике не получится, но можно его предварительно скопировать с помощью copy в Command Prompt.

Комментариев нет: