[Web Service][SOAP] Modifier le namespace ns1.
Bonjour,
Je cherche désespérément à "personnaliser" ns1 en autre chose ("api" ici), par exemple avec le code suivant :
Code:
1 2 3 4 5
| $soap_id = new SoapClient('http://foo', array('trace' => true));
$soap_id = __setSoapHeaders(new SoapHeader ("http://api", 'api');
$soap_id->toto(array( 'login' => 'login_value',
'key' => 'key_value',
'pwd' => 'pwd_value')); |
J'obtiens
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://api">
<SOAP-ENV:Header>
<ns1:api/>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:toto>
<login>
login_value
</login>
<pwd>
pwd_value
</pwd>
<key>
key_value
</key>
</ns1:toto>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
Or je souhaite obtenir ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:api="http://api">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<api:toto>
<login>
login_value
</login>
<pwd>
pwd_value
</pwd>
<key>
key_value
</key>
</api:toto>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
Je ne sais pas comment faire, j'ai joué avec les soap_var param et headers sans succès, la documentation reste relativement pauvre sur les namespace seul les contributions de php.net fournissent des informations pertinentes mais l'après midi ne m'a pas suffit à trouver la solution :(
Merci d'avance pour toutes vos suggestions.
Bien cordialement.