【问题标题】:Looking for a way to see the XML packets being sent to a web service on my server寻找一种方法来查看发送到我服务器上的 Web 服务的 XML 数据包
【发布时间】:2011-06-16 00:26:54
【问题描述】:

我正在寻找一种工具或技术来查看从供应商的服务器发布到我的 IIS6 服务器上托管的 ASMX Web 服务的传入 XML 数据包。

类似于 Fiddler 但在服务器端。 Fiddler 会这样工作吗?

【问题讨论】:

    标签: xml web-services iis-6 asmx


    【解决方案1】:

    我假设您所谓的“供应商服务器”实际上是 Web 服务客户端,它在您的服务器上调用 Web 服务?

    我不认识 fiddler,但Wireshark 会向您显示几乎所有网络流量。 使用过滤器,您可以使用它来捕获供应商客户端和您自己的 PC 之间的所有 HTTP 流量。我发现它在调试时非常有用。

    您的捕获过滤器将类似于:tcp port http and host stackoverflow.com

    作为显示过滤器,您可以使用:http.request or http.response

    (可能更简单,我是 WireShark 新手)

    【讨论】:

      【解决方案2】:

      是的,fiddler 将在服务器端工作。如果您通过托管 Web 服务的 w3wp.exe 进程对其进行过滤,它会更好地工作。

      但更好的方法是打开 Web 服务本身的跟踪。根据框架的版本,您可以通过 web.config 启用跟踪:Enabling Tracing in ASP.NET Web Services,或者在更糟糕的情况下,您可以编写或找到一个 SOAP 挂钩来注销连接。最后一个选项效果很好,但不是快速修复。

      有关使用 SOAP 扩展连接到消息传递并为您进行日志记录的示例,请查看此处提供的示例,SoapExtension Class。然后你只需将扩展添加到你的 web.config 的soapExtensionTypes Element

      【讨论】:

      • 跟踪邮件内容吗?
      • @John:我从未使用过内置跟踪。我总是最终使用 SOAP 扩展来记录请求和响应消息。跟踪不适用于消息内容吗?我在文档中没有看到任何表明这两种方式的内容。
      • 我不记得曾经看到过跟踪是有用的。 SoapExtensions 一直是解决方案。
      猜你喜欢
      • 1970-01-01
      • 2021-07-12
      • 2017-12-28
      • 1970-01-01
      • 2010-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多