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 :

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>
Resultat attendu :

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 code utilise pour le header :


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);
Le WSDL utilisé est bien le bon. Faut-il faire un traitement supplémentaire ? Passer le résultat par DOM ?

Merci d'avance, je m'y perd complètement avec SOAP.