Существует ли в PHP клиентская библиотека SOAP, которая может обрабатывать WSDL с несколькими конечными точками? - PullRequest
0 голосов
/ 15 апреля 2011

Я должен использовать службу WCF (.net).В wsdl есть несколько конечных точек, но я не могу выбрать из них BasicHttpBinding.

Есть ли PHP-клиент, который поддерживает это?Или я могу каким-то образом добиться этого в не WSDL-режиме?

Ответы [ 2 ]

0 голосов
/ 05 июня 2014

Вы можете использовать режим WSDL и по-прежнему устанавливать местоположение, как с помощью опции «location» в конструкторе, так и с помощью функции __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
    }
}
0 голосов
/ 03 апреля 2012

Существует очень хорошая библиотека PHP SOAP, которую можно использовать для создания веб-сервисов на основе SAOP и использования веб-сервисов SOAP ..

http://nusoap.sourceforge.net/

...