如何捕获在localhost上生成的SOAP请求?

时间:2011-04-15 09:56:04

标签: c# wcf web-services soap

我有一个简单的Windows控制台应用程序,我已经添加了服务引用,我正在尝试调用方法并提出请求!我在添加服务引用时使用.Net生成的代理类。

Web服务不在我的计算机上,而是由客户端外部托管!

我收到错误,所以我希望看到正在发送的HTTP请求。

我看不到小提琴手的请求,为什么不呢?

我可以通过调试控制台应用程序看到生成的请求吗?

3 个答案:

答案 0 :(得分:2)

您可以使用Fiddler查看localhost流量。请参阅Fiddler常见问题解答中的this article

您也可以启用WCF Tracing

答案 1 :(得分:0)

Fiddler绕过本地流量。如果要在客户端配置集.localhost地址(带点前缀)中嗅探本地地址。

答案 2 :(得分:0)

除了Fiddler和嵌入式跟踪工具之外,还有另一种查看生成的XML SOAP的方法-custom MessageEncoder。它允许插入原始字节内容,包括任何格式错误的xml。

为了使用此方法实现跟踪,您需要将标准textMessageEncoding包装为custom message encoder作为新的binding element,并将该自定义绑定应用于config中的端点。

此外,您还可以看到我在项目中的工作方式示例- wrapping textMessageEncoding,日志记录encoder,自定义绑定elementconfig