6

我有一个 ASP.NET MVC 4 应用程序,它需要查询另一个应用程序来处理请求。MVC 应用程序通过 REST 发出请求。我可以看到从浏览器到 MVC 应用程序的传入 HTTP 请求,但我看不到从 MVC 应用程序到 REST 应用程序的出站 REST 调用。

这两个应用程序都在 IIS Express 中运行。我访问 MVC 应用程序 localhost:42001 并且 REST 应用程序正在使用 ASP.NET MVC WebAPI,监听 localhost:42002

如何获取将发送到 localhost:42002 的 REST 请求?

该请求正在发送到 REST 应用程序,我还可以在该代码中设置和命中断点。我只是看不到 Fiddler 的流量。

4

2 回答 2

6

这是因为 Fiddler 是一个代理。您的浏览器通过 Fiddler 过滤所有请求。您的 Web 服务器未通过 Fiddler 进行代理,因此 Web 服务器到 Web 服务器的流量不会通过 Fiddler。

要让它工作,您需要告诉您的 Web 应用程序使用 Fiddler 的代理。似乎您可以关注http://fiddler2.com/documentation/Configure-Fiddler/Tasks/ConfigureDotNETApp,其中包含有关如何配置您的 Web 应用程序以通过代理发送所有请求的一些信息。

另一个想法,如果你愿意做一些数据包嗅探,你可以使用像Wireshark这样的东西,它会捕获你计算机上所有进出的流量,然后你可以过滤到你需要的信息。这对于您正在寻找的东西来说太过分了,但在某些时候可能会有所帮助。

于 2013-05-16T16:19:13.087 回答
3

默认情况下,Fiddler 代理从当前用户帐户发送的请求。ASP.NET 在不同的用户帐户中运行。有关如何从服务帐户(如 IIS/ ASP.NET 正在使用。

于 2013-05-16T19:21:39.650 回答