【问题标题】:How to see SOAP data my client application sends?如何查看我的客户端应用程序发送的 SOAP 数据?
【发布时间】:2009-01-13 15:42:20
【问题描述】:

我有一个项目,我使用 wsdl.exe 创建了 Web 服务代理类,然后简单地创建该类的一个实例(继承 System.Web.Services.Protocols.SoapHttpClientProtocol)并调用应该发送 SOAP 消息的方法.如果这很重要,我正在使用 Visual Studio 2008。我正在我的开发机器上尝试这个,而没有访问位于客户内部网内部的实际 Web 服务。因此,发送当然不会成功,我也不会得到任何回复,但我只想看到此解决方案创建并尝试发送的 SOAP 消息的确切内容。我怎么看?

【问题讨论】:

    标签: c# soap service


    【解决方案1】:

    使用fiddler

    【讨论】:

    • 我的编辑比我预期的要混乱......我的意思是让它说“提琴手”
    【解决方案2】:

    看看来自 eviware.com 的 SOAPUI。

    它是免费供个人使用的 Java 应用程序。除其他外,您可以 将其设置为作为虚拟测试服务器运行。只需加载 hte WSDL 并输入虚拟数据。

    在测试服务器模式下,它会记录您的请求,以便您查看发生了什么 在请求消息中。

    【讨论】:

      【解决方案3】:

      如果您的 Web 服务是通过明文、非 SSL HTTP 访问的,您可以只使用嗅探器(例如 Wireshark)来查看来自和流向您的应用程序的数据。 Wireshark 可以跟踪、过滤和分析有线数据。我已经多次使用它来调试 HTTP 和其他协议,它是一个很好的工具。

      【讨论】:

        【解决方案4】:

        SOAP 消息只是使用 HTTP POST 方法发送的 XML 数据。因此,例如,您可以在开发机器上安装本地 Web 服务器,配置您的 Web 服务以在该服务器上使用一些虚拟 URI,并使用 WireShark(AKA ethereal)获取网络流量。这种方法最大的优点是不需要编码。

        或者,您可以使用转储其传入流量的 HTTP 回显服务器,例如 this one(在谷歌搜索“http 回显服务器”时发现):

        【讨论】:

          【解决方案5】:

          你可以用tcpMon拦截来电

          【讨论】:

            猜你喜欢
            • 2012-10-19
            • 2018-08-06
            • 2018-01-19
            • 2014-11-07
            • 1970-01-01
            • 1970-01-01
            • 2017-03-30
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多