寻找一种方法来查看发送到我的服务器上的Web服务的XML数据包
问题描述:
我正在寻找一种工具或技术来查看从供应商的服务器发布到我的IIS6上托管的ASMX Web服务的传入XML数据包服务器。寻找一种方法来查看发送到我的服务器上的Web服务的XML数据包
有点像Fiddler,但在服务器端。菲德勒会这样工作吗?
答
是,小提琴手将在服务器端工作。如果通过承载Web服务的w3wp.exe进程对其进行过滤,它将会更好。
但是,更好的方法是将Web服务本身的跟踪转向。根据框架的版本,您可以通过web.config启用跟踪:Enabling Tracing in ASP.NET Web Services,或者在更糟糕的情况下,您可以编写或查找SOAP挂钩以注销连接。最后一个选项效果很好,但它不是一个快速修复。
有关使用SOAP扩展挂钩消息并为您执行日志记录的示例,请查看此处提供的示例SoapExtension Class。然后,您只需将扩展名添加到您的web.config的soapExtensionTypes Element。
答
我假设你称之为'供应商的服务器'实际上是Web服务客户端,在你的服务器上调用Web服务?
我不知道小提琴手,但Wireshark会告诉你任何和所有的网络流量。 使用过滤器,您可以使用它来捕获供应商的客户端和您自己的PC之间的所有HTTP流量。我发现它在调试中非常有用。
你捕获过滤器会是这样的:tcp port http and host *.com
而作为一个显示过滤器,你可以使用:http.request or http.response
(也可能是简单的东西,我是Wireshark的福利局)
他正在使用ASMX。没有好的跟踪。 – 2011-01-26 19:02:03