【问题标题】:How do SOAP web services work and how to use them in PHPSOAP Web 服务如何工作以及如何在 PHP 中使用它们
【发布时间】:2012-04-02 12:07:12
【问题描述】:

Soap Envelope 中的元素与 HTTP 标头有何不同?

为什么 REST 响应被认为是人类可读的,而 SOAP 不是?

在 PHP 中通过 SoapClient() 类使用 SOAP 服务时,基本思想是 SoapClient() 类接受 WSDL 作为参数,找到 Web 服务的位置,根据什么方法构造 SOAP 包络并在您的 SoapClient 对象上调用 params,发送请求并返回某种响应?

【问题讨论】:

    标签: php web-services soap


    【解决方案1】:

    SOAP 只是 HTTP 之上的基于 XML 的协议。我不知道为什么它不是人类可读的..我想它有点复杂,但它仍然是纯文本/文本

    根据我对 SOAP 的经验,它提供了用于设置 Web 服务的基本架构。您调用 SOAP Web 服务就像调用常规函数一样。你可以有任意数量的参数,只要确保它们通过 XML/HTTP 很好地序列化。

    另外,SOAP 为您提供了一个 WSDL 文件,其中基本上是对您的 Web 服务的描述(函数及其参数的列表)。

    【讨论】:

    • 我刚刚注意到很多网站都说 REST 的一个优点是 REST 响应是人类可读的。不知道为什么 SOAP 响应不会,除非是因为涉及到更多的 XML 使得它更加复杂......
    • REST 与人类可读性无关。 REST 是一种协议设计选择。 REST 协议通常非常简单,HTTP(这是一个 REST 协议)具有纯文本、行分隔的实现,我想这就是为什么你可以说它是人类可读的。而且正如您所说,SOAP 信封的确切含义隐藏在其中的某个地方,因此不太容易阅读。
    猜你喜欢
    • 2016-09-30
    • 2011-10-12
    • 1970-01-01
    • 2013-12-05
    • 1970-01-01
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多