使用Fiddler和IIS7 Express

Bre*_*ski 39 fiddler iis-express

我正在开发我的Web应用程序时使用IIS7 Express.我需要使用fiddler来调查一个问题,并且无法弄清楚如何配置事情以便我可以获得HTTP流.似乎IIS7 express只会侦听localhost,这意味着我无法访问流.

Eri*_*Law 55

这与IIS7 Express无关,而且与您使用环回流量这一事实有关.

参考:https://www.fiddlerbook.com/fiddler/help/hookup.asp#Q-LocalTraffic

单击规则>自定义规则.

像这样更新您的规则文件:

static function OnBeforeRequest(oSession:Fiddler.Session)
{
    if (oSession.HostnameIs("MYAPP")) { oSession.host = "localhost:portnumber"; }
}
Run Code Online (Sandbox Code Playgroud)

然后,只需访问http://myapp您的浏览器即可.

或者使用地址http://localhost.fiddler/,Fiddler将使用主机名localhost而不是转换为IP地址.

  • 嗨Eric和Brettski,Brettski是正确的,我实际上发现了与IIS Express相同的问题.它似乎只监视主机名"localhost"而不是流量到127.0.0.1.我最近在StackOverflow上发布过类似的问题http://stackoverflow.com/questions/4709014/using-custom-domains-with-iis-express (3认同)

Jar*_*sky 12

Eric的答案(由Brett编辑)的一个有用变体是oSession.port用来构建oSession.host.通过这一小改动,如果需要捕获IIS快速流量http://localhost:12345,他们可以使用http://iisexpress:12345.这样可以更轻松地捕获WebMatrix和VS创建的具有随机端口的站点的流量.我用IE和Firefox试了一下,捕获IIS Express流量是轻而易举的.提琴手岩石!

static function OnBeforeRequest(oSession:Fiddler.Session)
{
   //...
   // workaround the iisexpress limitation
   // URL http://iisexpress:port can be used for capturing IIS Express traffic
   if (oSession.HostnameIs("iisexpress")) { oSession.host = "localhost:"+oSession.port; }
   //...
}
Run Code Online (Sandbox Code Playgroud)


Thr*_*aka 5

使用最新版本的 fiddler,您只需导航到 localhost.fiddler:port。然而,单独这样做并没有帮助我,并且在使用 Windows 身份验证时我仍然被拒绝访问。为了解决这个问题,我找到了这个博客条目:http ://www.parago.de/2013/01/fiddler-and-the-401-unauthorized-error-with-asp-net-web-api-using-integrated- Windows 身份验证-wia/

简而言之,创建这个密钥:

键路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\Lsa\MSV1_0

值名称BackConnectionHostNames

值类型REG_MULTI_SZ

字符串值localhost.fiddler