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-файл соответствующего действия.