@ChernovGV

Php SOAP, как авторизоваться на всех используемых доменах в WSDL?

Добрый день.
Необходимо отправить коневерт в SOAP сервис. Условия такие:
Есть stunel через который проброшен тоннель до домена domainA.Т.е. теперь через 127.0.0.1:8080 я обращаюсь к этому домену.
И так, я пытаюсь создать soap клиента:
$location = 127.0.0.1:8080/some?wsdl
             $client = new SoapClient($location, array('trace' => 1, 'location'=>$location, 'login' => $login, 'password' => $pass));

И выходит эксепшен:
SOAP-ERROR: Parsing Schema: can't import schema from 'https://domainB/some.xsd'

Смотрю содержимое 127.0.0.1:8080/some?wsdl, там подключается несколько .xsd файлов на другом домене. Ок.
Пытаюсь создать проект в SoapUI, ввожу 127.0.0.1:8080/some?wsdl, ввожу логин-пароль все ок, далее выходит опять окно авторизации уже для файла https://domainB/some.xsd, еще раз ввожу тот-же логин-пароль, потом еще для нескольких файлов, и все проект создался, и сервис начинает корректно отвечать на запросы.
Вывод нужно авторизоваться не только в самой WSDL, но и для каждого используемого в WSDL файла. В SoapUI это делается руками, но как это сделать с помощью php?
  • Вопрос задан
  • 919 просмотров
Решения вопроса 1
@ChernovGV Автор вопроса
В общем, решил вопрос с помощью:
https://packagist.org/packages/phpforce/soap-client
Скрипт качает все используемые файлы в кеш и все норм работает.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы