【问题标题】:Which tools to build a SOAP server in PHP?用 PHP 构建 SOAP 服务器的工具有哪些?
【发布时间】:2010-10-12 11:23:38
【问题描述】:

我们正在研究用 PHP 构建 SOAP Web 服务的选项。我们有一些要求:

  • 通过 SOAP 标头进行身份验证
  • HTTPS
  • 对 SOAP 响应中使用的 XML 的精细控制
  • 良好的文档和支持社区。​​li>
  • (可选)WS 安全支持

有以下工具提供此类功能:

  • 原生 PHP SoapServer
  • Zend_Soap
  • NuSoap
  • WSO2 WSF/PHP
  • 梨::SOAP

Zend_Soap 实际上是原生 PHP Soap 实现的框架兼容包装器。我们运行了一些简单的测试,但不支持 SOAP 标头,并且我们无法完全控制 XML 响应。例如,响应 XML 在根元素上有一个命名空间,但在它的子元素上没有。很烦人。

NuSoap 不再被真正维护,我读过它在 PHP 5.3 命名约定方面存在一些问题。

WSO2 WSF/PHP 使用必须手动编译的 php 扩展。有一些依赖关系,整个编译过程没有明确记录。文档分散在网站上(有时已过时)和打包下载中。提到了一个 linux 二进制文件,但没有提供下载(至少在最近的 5/6 版本中没有)。

我对 PEAR::SOAP 了解不多,但我对 PEAR 类有一些经验。通常它们没有很好的文档记录,也不会优雅地捕捉错误,让您在谷歌上搜索每条错误消息,结果各不相同。

考虑到我们的要求,您是否知道任何其他工具可以帮助我在 PHP 中构建一个成熟的 SOAP 服务器?

【问题讨论】:

    标签: php soap


    【解决方案1】:

    如果您需要 WS-Security,那么 WSO2 可能是您唯一的选择。编译前是否安装了所有必备包(openssl、libxml2)。使用 ./configure、make && make install 进行编译很简单(我对 2.1.0 的编译没有任何问题)。 WSO2 提供对有效负载 XML 结构的完全控制。

    如果您可以在没有 WS-Security 的情况下生活,那么任何其他选项都是不错的。我会推荐 PHP 自己的 SOAP 库。它相当不错,但不能很好地控制 XML 并且缺少 WSDL 自动生成。

    【讨论】:

      【解决方案2】:

      我不知道其他任何人。我过去总是使用 PEAR SOAP,但不幸的是,它似乎不再维护了。在那里你不需要文档,它很容易使用。

      但如果我必须构建另一个 SOAP 客户端/服务器,我会采用 Zend-SOAP 方式,因为所有其他客户端/服务器都不是最新的。

      【讨论】:

        猜你喜欢
        • 2019-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-14
        • 2010-09-16
        • 1970-01-01
        相关资源
        最近更新 更多