SoapServer не может загрузить сгенерированный файл wsdl в пакет Zoap - PullRequest
0 голосов
/ 04 июля 2019

laravel / framework: "5.6" PHP 7.3.5

Я использую пакет Zoap для создания API-интерфейса сервера Soap и при попытке доступа к своей конечной точке в приложении Laravel (локальном) через ngrok (Это не проблема) Я закончил со следующими ошибками:

PHP Предупреждение: SoapServer :: SoapServer (http://7184fa0e.eu.ngrok.io/zoap/demo/server?wsdl): не удалось открыть поток: сбой HTTP-запроса! В C: \что-то \ что-то \ что-то \ что-то \ что-то \ что-то \ vendor \ zendframework \ zend-soap \ src \ Server.php в строке 915 [Чт. 4 июля 11:06:11 2019] Предупреждение PHP: SoapServer :: SoapServer (): I/ O предупреждение: не удалось загрузить внешнюю сущность "http://7184fa0e.eu.ngrok.io/zoap/demo/server?wsdl" в C: \ нечто \ что-то \ что-то \ что-то \ что-то \ что-то \ vendor \ zendframework \ zend-soap \ src \ Server.php в строке 915 [ЧтJul 4 11:06:11 2019] Неустранимая ошибка PHP: SOAP-ERROR: Синтаксический анализ WSDL: не удалось загрузить из 'http://7184fa0e.eu.ngrok.io/zoap/demo/server?wsdl': не удалось загрузить внешний объект "http://7184fa0e.eu.ngrok.io/zoap/demo/server?wsdl"

Я пытался отладить, чтобы выяснить, что случилось, и, насколько я мог понять, это может быть инфначальная петля.Если я сделаю запрос к /zoap/demo/server?wsdl, он вернет штраф wsdl, хотя если я сделаю запрос к /zoap/demo/server, он будет загружаться в течение 60 секунд, а затем вернет

Неустранимая ошибка PHP: максимальное выполнениевремя 60 секунд превысило

при блокировке конечной точки zoap/demo/server?wsdl.

Я отслеживал код, чтобы точно определить, где будет проходить цикл, и он, кажется, здесь: $server = new SoapServer($this->wsdl, $options);, Server.php файл, getSoap Функция.$this->wsdl возвращает URL-адрес wsdl в виде строки и $options массив с soap_version, поэтому я думаю, что они работают нормально.

Из любопытства я попытался отключить public function server($key) в ZoapController вдва, чтобы получить wsdl на другом маршруте, и это решило бесконечный цикл.Хотя в итоге я получил пустой XML-файл.

У меня нет идей, и я был бы признателен, если бы кто-нибудь мне ответил.Пожалуйста, запрашивайте дополнительную информацию, если вам это нужно.

Ожидаемый результат должен получить XML-файл соответствующего действия.

...