Bonjour à tous,
Je transmet une petite info sur l’interrogation d’un web service à partir d’un javascript (ajax). Le but étant de récupérer le résultat d’un web service en fonction d’une entrée utilisateur sur une page web par exemple.
J’utilise le framework prototype, mais je pense que c’est facilement transposable pour ceux qui utilisent jquery ou mootools.
L’exemple est celui d’une interrogation d’un WS qui renvoie une liste de serveurs sur lesquels l’application entrée par l’utilisateur est présente.
Voici le code HTML (on ne peut pas plus simple):
<script src=’prototype.js’></script>
<input id=’appli’ type=’text’><input onclick=’getAppli();’ type=’button’ value=’go’>
<div id=’result’></div>
et le code javascript :
<script>
function getAppli(){
if($F(‘appli’)!= »){
new Ajax.Request(‘http://nomduserver/wsinfosi/GetInfoSi.asmx/GetEquipmentBusiness’,{
method: ‘post’,
parameters:{business_app:$F(‘appli’).toUpperCase()},
encoding:’utf-8′,
onCreate:function(){
$(‘result’).update(‘<img src=\’wait.gif\’ />’);
},
onComplete: function(transport){
var txt = transport.responseText;
$(‘result’).update(txt);
}
});
}
}
</script>
N’hésitez pas si vous avez des questions sur ce petit bout de code ![]()
A bientôt !
PS : c’est juste un exemple hein … je devrais virer le onclick et associer un événement au click plus « proprement » normalement !
bonjour
Merci pour ce bout de code, mais je suis un newbee en programmation et surtout en javascript.
je voudrais faire appel au service web du Chronopost pour récupérer les points relais mais j’arrive pas avec votre bout de code.
je ne sais pas comment accéder au nœuds du fichier xml récupéré.
merci
Bonjour,
Faire appel au web service pour récupérer un résultat est la 1ère partie.
La 2ème est d’interpréter ce résultat !
La, tout dépend du javascript utilisé. Si c’est prototype, tu peux récupérer le XML « nativement » pour le traiter.
Du coup, le transport.responseText de mon exemple devient un transport.responseXML
Il y a un bon exemple de ce que tu veux faire ici :
http://blog.pascal-martin.fr/post/Utiliser-XML-comme-format-echange-de-donnees-en-utilisant-prototype
J’espère que celà répond à ta question.
Cdt,
Sébastien