веб-сервисы — использование wsHttpBinding с PHP Soap Client

есть ли способ использовать wsHttpBinding с клиентом PHP Soap? Это не сработало на моем сайте с первых попыток. Мне пришлось изменить соединение на basicHttpBinding,

Основная причина сделать это заключается в том, что (как я понимаю) wsHttpBinding использует новые стандарты мыла и обеспечивает некоторую безопасность. Также порядок ответа должен быть таким же, как и порядок запросов.

заранее спасибо

1

Решение

basicHttpBinding используйте SOAP 1.1 и wsHttpBinding используйте SOAP 1.2

По умолчанию SoapClient использует SOAP 1.1, но вы можете изменить это.

$wsdl = "...url_to_your_wsdl...";
$client = new SoapClient($wsdl, array("soap_version" => SOAP_1_2));

http://php.net/manual/en/soapclient.soapclient.php

1

Другие решения

Насколько я знаю, PHP Soap Client не поддерживает весь стандарт WS (в частности, WS-Security). Вы должны попытаться использовать некоторые сторонние фреймворки, как это:

http://wso2.com/products/web-services-framework/php/

Надеюсь, поможет,

0

Если вы сконфигурируете WsHttpBinding, чтобы у него не было безопасности или безопасности транспорта, это должно быть возможно. желаемое мыло будет простым, и вы можете создать его даже путем объединения строк. в противном случае я не думаю, что php поддерживает стандарты безопасности newset.

0