[英]Using Fiddler with IIS7 Express
我正在开发我的Web应用程序时使用IIS7 Express。 我需要使用fiddler来调查问题,并且无法弄清楚如何配置事情以便我可以获取HTTP流。 似乎IIS7 express只会侦听localhost,这意味着我无法访问流。
这与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"; }
}
然后,只需在浏览器中访问http://myapp
即可。
或者使用地址http://localhost.fiddler/
将使用主机名localhost
而不是转换为IP地址。
Eric的答案(由Brett编辑)的一个有用的变体是使用oSession.port
来构建oSession.host
。 通过这一小改动,如果需要在http://localhost:12345
上捕获IIS快速流量,他们可以使用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; }
//...
}
使用最新版本的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
您可以使用fiddler作为客户端和服务器之间的代理。 这意味着你启动fiddler,然后使用fiddler的端口而不是通常的端口访问服务器(我认为fiddler2的默认值是8888)。 如果您需要调试服务器“实时”与真实客户端,您可以将IIS绑定从:80更改为其他内容,并将fiddler的代理放在端口80上。
编辑:顺便说一句,默认情况下fiddler2更改浏览器上的代理设置,以便他们无论如何都可以通过fiddler访问所有内容(仅在安装了fiddler的机器上)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.