У меня проблемы с аутентификацией с SOAP-сервером, к которому я пытаюсь подключиться.Проблема аутентификации SOAP
мне нужно использовать этот адрес для retreiving WSDL-данные https://profitweb.afasonline.nl/profitservices/updateconnector.asmx?wsdl
Когда я ввести этот адрес в браузере, имя пользователя и пароль запрашивается. Набрав мое имя пользователя и пароль, отображается WSLD XML.
Итак, я использую этот мир PHP кода
$wsdl = "https://profitweb.afasonline.nl/profitservices/updateconnector.asmx?wsdl";
$url = "https://profitweb.afasonline.nl/profitservices/updateconnector.asmx";
$login = 'username';
$password = 'password';
$client = new SoapClient($wsdl, array('login' => $login, 'password' => $password));
Но тогда я получаю следующее сообщение об ошибке:
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://profitweb.afasonline.nl/profitservices/updateconnector.asmx?wsdl' : failed to load external entity "https://profitweb.afasonline.nl/profitservices/updateconnector.asmx?wsdl" in C:\xampp\htdocs\test.nl\soap.php:8 Stack trace: #0 C:\xampp\htdocs\test.nl\soap.php(8): SoapClient->SoapClient('https://profitw...', Array) #1 {main} thrown in C:\xampp\htdocs\test.nl\soap.php on line 8
Это не выглядит как ошибка аутентификации. Однако, если я загружаю файл wsdl вручную, сохраните его локально, а затем используйте этот файл для создания new SoapClient
, я не получаю никаких ошибок при инициализации SoapClient.
Но если я тогда сделать запрос
$client->__doRequest($request, $url, 'Execute', '1');
Я получаю эту __getLastResponseHeaders
HTTP/1.1 401 Unauthorized (The server requires authorization to fulfill the request. Access to the Web server is denied. Contact the server administrator.) WWW-Authenticate: Negotiate WWW-Authenticate: Kerberos WWW-Authenticate: NTLM Connection: Keep-Alive Pragma: no-cache Cache-Control: no-cache Content-Type: text/html Content-Length: 3184
Так что это дает мне идею, что я бегу в проблемы аутентификации! Читайте много сообщений уже об этой проблеме, но не можете найти правильный реактивный самолет!
EDIT Добавление этого к опциям мне в самом деле ошибка аутентификации
'trace' => 1, 'exceptions' => 0
ДАЙ в.
Warning: SoapClient::SoapClient(https://profitweb.afasonline.nl/profitservices/updateconnector.asmx?wsdl): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized (The server requires authorization to fulfill the request. Access to the Web server is denied. Cont in C:\xampp\htdocs\test.nl\soap.php on line 9
попробовать ссылку как HTTP вместо HTTPS – MDroid
@MDroid, та же ошибка при использовании этой ссылке! – Timo002
Получил идентичную проблему ... –