@Roquefort

Как получить ответ через SOAP запрос?

Использую ZendFramework.

$client = new \Zend\Soap\Client('http://www.webservicex.com/globalweather.asmx?wsdl');

var_dump($client->call('GetCitiesByCountry',['CountryName' => 'Russian']));  // int(0)
var_dump($client->GetCitiesByCountry(['CountryName' => 'Russian'])) // int(0)

Ожидаю получить список городов, а приходит ноль.
Через SOUPUI ответ корректный. Сервак висит на виртуалке. Почему (судя по ответу getFunction) я получаю wdsl, парсер отрабатывает без ошибок, а ответа при вызове функции - нет

Вывод
var_dump($client->getFunctions())

array(4) {
  [0]=>
  string(53) "GetWeatherResponse GetWeather(GetWeather $parameters)"
  [1]=>
  string(77) "GetCitiesByCountryResponse GetCitiesByCountry(GetCitiesByCountry $parameters)"
  [2]=>
  string(53) "GetWeatherResponse GetWeather(GetWeather $parameters)"
  [3]=>
  string(77) "GetCitiesByCountryResponse GetCitiesByCountry(GetCitiesByCountry $parameters)"
}
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ответы на вопрос 2
Попробуйте $client->getLastRequest()
Ответ написан
@krypt3r
Вариант с call() закомментируйте, он исключение выбрасывает. Вариант $client->GetCitiesByCountry() вполне рабочий, возвращает список городов.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
E-Produce Жуковский
от 80 000 до 100 000 ₽
CloudAlly Казань
До 200 000 ₽
ОПТИПАРТ Москва
от 160 000 до 200 000 ₽
04 июл. 2020, в 12:03
30000 руб./за проект
04 июл. 2020, в 11:52
20000 руб./за проект
04 июл. 2020, в 11:12
1000 руб./за проект