Bonjour,
Je suis en train de réaliser une application qui doit utiliser un service web afin d'envoyer des sms. Pour ce faire, j'utilise le service "aspsms.com".
J'ai créé un premier script qui utilise SoapClient. Cependant, quelque chose m'échappe lors de l'appel d'une méthode sur le serveur. J'ai testé les deux variantes possibles mais je n'obtiens pas le même résultat.
Script php :
Résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 $client = new SoapClient("https://webservice.aspsms.com/aspsmsx.asmx?WSDL", array('trace' => 1, 'soap_version' => SOAP_1_2)); $obj = $client->CheckCredits("userkey", "password"); echo $client->__getLastRequest() . "\n"; $param = array(array( "UserKey" => "userkey", "Password" => "password" )); $obj = $client->__soapCall("CheckCredits", $param); echo $client->__getLastRequest() . "\n";
Constatation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="UTF-8"?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://webservice.aspsms.com/"><env:Body><ns1:CheckCredits/><param1>password</param1></env:Body></env:Envelope> <?xml version="1.0" encoding="UTF-8"?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://webservice.aspsms.com/"><env:Body><ns1:CheckCredits><ns1:UserKey>userkey</ns1:UserKey><ns1:Password>password</ns1:Password></ns1:CheckCredits></env:Body></env:Envelope>
La première requête n'est pas valide... La seconde fonctionne parfaitement.
Question :
Pourquoi la première méthode utilisée ne génère pas la même requête que la seconde ? Ai-je fais une faute ?
Merci d'avance...
Partager