【问题标题】:Rest vs Soap consuming休息与肥皂消耗
【发布时间】:2017-12-05 16:33:07
【问题描述】:

谁能帮我理解消费休息服务与消费肥皂服务代码明智的区别?

我需要核心差异来消费它们

【问题讨论】:

    标签: xml web-services


    【解决方案1】:

    使用 Soap 意味着您需要将包含 Web 服务中对象和方法定义的 wsdl 文件作为 Web 引用传递给使用应用程序。每次更新 Web 服务中的任何对象类或方法时,都需要更新消费应用中的引用。

    为了使用 rest 服务,您只需要知道端点、服务所在的 url 以及 Web 服务在返回任何数据之前要求您拥有的任何参数和标头。一旦您知道您可以调用一个 httpclient 实例并创建一个请求以获取或发布到该端点。

    【讨论】:

    • 除了“端点,服务所在的 url”(SOAP 也需要它)之外,WSDL 和“需要知道 Web 服务所需的任何参数和标头”之间的核心区别是什么如果是 REST-POST/PATCH/UPDATE 则作为有效负载格式?
    • wsdl 文件更加全面,包含您需要了解的所有信息,例如来自 tutorialspoint 的此示例,tutorialspoint.com/wsdl/wsdl_example.htm 当您向使用应用程序提供此文件时,它将使用该文件在您的应用上创建代理类以接收和读取该数据。
    【解决方案2】:

    对我来说核心区别是:

    SOAP 位于有效负载格式级别,而 REST 位于通信级别。没有什么能阻止通过 REST 端点发送 SOAP 有效负载。

    因为:

    1. SOAP 是基于 XML 的有效负载,严格遵循 WSDL 规范,代码必须相应地使用它,而 REST 没有定义有效负载,只是一种通信。

    2. SOAP 没有定义任何传输层,而 REST 只是关于通过 HTTP 进行的通信。 SOAP 可以通过任何渠道发送 - HTTP、JMS、FTP、物理 CD/DVD ...谁在乎 :-)

    3. 通过 HTTP SOAP webservice 只使用 HTTP POST 方法,而 REST 为不同的操作定义了不同的 HTTP 方法 - GET 检索数据,POST 添加数据,PATCH/POST 修改现有数据等等......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-24
      • 1970-01-01
      • 2012-03-28
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多