Bonjour,
Je travaille actuallement sur l'implémentation de services web en XML.
Selon les services, la méthode de connexion est différente. Soit une connexion simple via Curl (ce qui ne pose pas de problème), soit il faut passer par SOAP.
Mon problème se pose avec la connexion via SOAP.
En effet, le XML généré, nottament au niveau du header, ne semble pas correspondre à celui attendu et le rejette.
Voici le resultat obtenu :
Resultat attendu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <ns2:Authentication> <item> <key>Organization</key> <value>le_nom</value> </item> <item> <key>Username</key> <value>le_user</value> </item> <item> <key>Password</key> <value>le_pass</value> </item> </ns2:Authentication>
Le code utilise pour le header :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5<Authentication xmlns="url_ns"> <Organization>le_nom</Organization> <Username>le_user</Username> <Password>le_pass</Password> </Authentication>
Le WSDL utilisé est bien le bon. Faut-il faire un traitement supplémentaire ? Passer le résultat par DOM ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $headers = array( 'Organization' => 'le_nom', 'Username' => 'le_user', 'Password' => 'le_pass' ); $soap_headers = new SOAPHeader($url_wsdl, 'Authentication' $headers); $soap_client->__setSoapHeaders($soap_headers);
Merci d'avance, je m'y perd complètement avec SOAP.
Partager