[Web Service] SoapClient et authentification (encore un, mais en plus complex)
Bonjour à tous!
Comme beaucoup je tente avec PHP et SoapClient d'accéder à un Web Service protégé. Celui-ci est protégé par un login et mot de passe.
Code:
1 2 3 4 5 6 7 8 9 10 11
|
$adresseWebServiceWsdl = "https://acces.tralala.org/tralala-service-recherche/RechercheService?wsdl";
$options = array(
"login" => $login,
"password" => $mdp,
"authentication" => SOAP_AUTHENTICATION_BASIC,
"trace" => true,
"exceptions" => 0,
"cache_wsdl" => WSDL_CACHE_NONE);
$soapClient = new SoapClient($adresseWebServiceWsdl, $options); |
Le problème que je rencontre ne vient pas de la récupération du WSDL qui à l'air de fonctionné au vue de l'erreur que je rencontre :
Code:
Warning: SoapClient::SoapClient(https://acces.taratata.org:443/tralala-service-web/RechercheService?xsd=1) [soapclient.soapclient]: failed to open stream: HTTP request failed! HTTP/1.1 401 Non-Autorisé in /home/xxxx/www/xxxx/recherche.php on line 12
l'adresse "https://acces.taratata.org:443/tralala-service-web/RechercheService?xsd=1" fait partie d'un import dans le WSDL
Code:
<xsd:import namespace="http://tralala.org" schemaLocation=""https://acces.taratata.org:443/tralala-service-web/RechercheService?xsd=1"/>
Je vous rassure cette adresse est accessible depuis un navigateur, bien sûr sous réserve de renseigner le login et mot de passe dans la boite de dialogue d'authentification.
J'ai l'impression que SoapClient procède bien à l'identification lors de la récupération du WSDL mais pas pour le xsd...
Quelqu'un à déjà rencontré ce problème?