【问题标题】:How to intercept service-to-service call in Fiddler2?如何在 Fiddler2 中拦截服务到服务的调用?
【发布时间】:2012-04-17 08:13:33
【问题描述】:

在我的 Windows 7 机器上,我有两个 Web 应用程序(托管 WCF 服务)托管在 IIS 7.5 下。

在 Fiddler 中,我可以看到从桌面应用程序到 Web 应用程序的所有调用。但是,我没有看到从一项服务到另一项服务或一项服务通过 Internet 调用其他网站的任何呼叫。

如何让 Fiddler 拦截服务到服务(也是互联网服务)的调用?

【问题讨论】:

标签: .net wcf debugging fiddler


【解决方案1】:

在您的 Internet Explorer 中将 fiddler 配置为代理 - 这将使整个机器的设置全局化(如果您在设置中允许,Fiddler 可以自动执行此操作)。

接下来尝试捕获流量(确保您正在捕获来自所有进程的流量)。如果您仍然看不到来自您的服务的流量,请检查:

  • 从客户端调用服务时使用外部地址。当客户端调用部署在本地计算机上的服务或站点时,客户端必须使用您的 IP 地址或计算机名称调用服务。您不得使用 localhost / 127.0.0.1 - 这些调用永远不会被代理
  • 您没有在 IE 中配置任何代理绕过地址或检查本地地址的绕过
  • 不要覆盖应用程序中的代理设置 - 例如,通过在 WCF 绑定配置中关闭 useDefaultWebProxy 或在 system.net 配置中设置代理。

最后,您可以尝试将其添加到您的客户端配置中(但这是默认配置):

<system.net>
  <defaultProxy enabled="true" />
</system.net>

默认情况下,您只会看到 HTTP 流量。 HTTPS 将需要额外的配置。

【讨论】:

  • 感谢您的回答。不幸的是,它并没有解决我的问题。我无法在 IE 中设置“Fiddler 作为代理”。但我检查了你建议的所有其他内容。我正在NETWORK SERVICE 帐户下运行 WCF Web 应用程序。你能进一步指导我吗?
  • 我有同样的场景,即 web 应用程序调用服务 1,它调用服务 2。服务 1 调用被记录,但服务 2 没有。服务 1 在我的机器上(建议使用机器名称别名)并且服务 2 在另一台机器上。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-13
  • 2012-11-04
  • 2016-04-26
  • 1970-01-01
相关资源
最近更新 更多