【问题标题】:Is there any SOAP client library in PHP which can handle WSDL with multiple endpoints?PHP 中是否有任何可以处理具有多个端点的 WSDL 的 SOAP 客户端库?
【发布时间】:2011-04-15 07:04:53
【问题描述】:

我必须使用 WCF(.net) 服务。 wsdl 中有多个端点,但我无法从中选择 BasicHttpBinding。

是否有任何支持此功能的 PHP 客户端?或者我可以在非 WSDL 模式下以某种方式实现这一点吗?

【问题讨论】:

    标签: php soap wsdl client


    【解决方案1】:

    有一个非常好的 PHP SOAP 库,可用于构建基于 SAOP 的 Web 服务和使用 SOAP Web 服务。..

    http://nusoap.sourceforge.net/

    【讨论】:

      【解决方案2】:

      您可以使用 WSDL 模式,但仍然可以设置位置,既可以使用构造函数中的“位置”选项,也可以使用 __setLocation() 函数。您还可以为 SoapClient 创建一个包装器类来执行更复杂的操作,例如将所有端点从 WSDL 中提取出来,然后对它们应用逻辑以确定哪个端点用于什么用途:

      class SoapClientCompatibility extends SoapClient{
      
          public function __construct($wsdl, $options){
              parent::__construct($wsdl, $options);
      
              //determine which location you want to use here
      
              parent::__setLocation($chosenLocation);
          }
      
          public function __doRequest($request, $location, $action, $version){
              // --Or, perhaps you want to dynamically switch location in here
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-30
        • 2011-10-04
        • 2011-09-14
        相关资源
        最近更新 更多