Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Salut,
La 1.6 sortie, un petit exemple le plus basique possible pour communiquer avec un serveur Soap, avec Zend.
Petite ressource pour les débutants.
En mode WSDL :
En imaginant que le serveur dispose d'une méthode 'Authentification' permettant de vérifier des accès, qui renvoie un jeton AuthentificationResult (un token) :
- chaine vide = refusé
- chaine non vide (jeton) = accepté
Zend_Loader::loadClass('Zend_Soap_Client'); // contacte le serveur et récupère le WSDL ('xml' définissant les méthodes du webservice) $client = new SoapClient('http://www.xxxxxx.net/truc.asmx?wsdl'); // Attention : ne pas oublier de préciser le nom des paramètres $params = array('_NomParamID' => 'XXXXXXXX', '_NomParamPWD' => 'XXXXXXXX'); // renvoi la liste des méthodes du webservice // $soap_functions = $client->__getFunctions(); // print_r($soap_functions); // exit; // ou dans un navigateur : http://www.xxxxxx.net/truc.asmx?wsdl pour le XML // ou http://www.xxxxxx.net/truc.asmx pour la doc si le webservice est bien construit // Appelle la méthode 'Authentification' du webservice $resultl = $client->Authentification($params); if (!empty($resultl->AuthentificationResult)) { // connexion acceptée, on continue } else { // refusé }
Petite précision :
La doc ne le précise pas, mais pour être certain que l'appel des méthodes fonctionne quelque soit le webservice, n'oubliez pas de préciser le nom des paramètres que vous passez à ces méthodes.
Ne pas faire :
$params = array('XXXXXXXX', 'XXXXXXXX');
Mais :
$params = array('_NomParamID' => 'XXXXXXXX', '_NomParamPWD' => 'XXXXXXXX');
Voilà, je ne rentre pas dans des exemples avançés, c'est simplement pour les débutants.
A+ benjamin.
Hors ligne