Après avoir défini la ajax- Request globale en un nouvel objet XMLHttpRequest, la fonction établit une requête SOAP. La plus grande partie du code getAccounts est du type couper/coller à l’exception de la définition de la variable URL et du contenu de la section <soap:Body> du paramètre de la fonction
Un moyen simple d’appeler des services Web (2)
ajaxRequest.send. La variable URL contient le nom du service Web et le corps SOAP contient les paramètres nécessaires au service Web. Les barres obliques sont utilisées par JavaScript pour identifier les lignes de suite pour les chaînes. Voyons maintenant quel XML va dans cette requête SOAP. La figure 1 montre le XML SOAP qui est envoyé au service Web. Ce XML est généré dynamiquement dans la fonction getAccounts qui utilise une variable pour le compte. Mais alors, comment puis-je connaître le XML nécessaire ?
Tous les services Web fournissent un fichier XML WSDL (Web Services Description Langage) qui décrit le service. La figure 7 montre la section du WSDL de mon exemple de service Web basé sur RPG, qui spécifie quel XML est requis pour invoquer le service (ainsi que le format de la réponse XML). En comparant le XML de la figure 7 à celui de la figure 1, vous verrez comment j’ai pu déterminer ce qui était nécessaire dans la requête d’envoi Ajax dans le JavaScript personnalisé. Pour déterminer le format de la réponse XML SOAP, je copie généralement les résultats d’une requête de test dans une étiquette de zone texte HTML (figure 2) pour voir exactement à quoi ressemblera le XML renvoyé.
Le A de Ajax signifie asynchrone et, avant qu’une requête d’envoi Ajax soit effectuée, vous devez identifier une fonction qui sera chargée de traiter la réponse asynchrone. Le HTML getAccounts a indiqué que ajaxResponseFunction était cette fonction, par la ligne de code suivante :
ajaxRequest.onreadystatechange =ajaxResponseFunction;
Les deux blocs if obligatoires de la ajaxResponseFunction vérifient quand une réponse OK est renvoyée. Et, quand la requête présente l’état OK, la fonction introduit la version texte de la réponse dans la zone texte du formulaire HTML pour que vous puissiez voir le XML non formaté.
Le nom du formulaire est myForm et le nom de la zone texte est xmlResponse. document.myForm.xmlResponse.value = ajaxRequest.responseText; La ligne de code suivante transmet le XML SOAP renvoyé à partir de la requête Ajax, à la fonction xslTransformAjaxResponse.XslTransformAjaxSoapResponse (ajaxRequest.responseXML);
La fonction xslTransformAjaxSoapResponse commence par définir le document XML comme asynchrone.
La deuxième ligne invoque la fonction utilitaire getXmlDocument pour extraire le XSL du serveur.
Dans la troisième ligne, xslTransformAjaxSoapResponse obtient une référence variable vers l’étiquette div de HTML (avec l’identificateur xslTransformedResponseDiv). La quatrième ligne crée un objet Sarissa XSLTProcessor et, dans la cinquième ligne, utilise cet objet processeur pour importer XSL.
La dernière ligne demande à Sarissa de mettre à jour le contenu de l’étiquette div avec le HTML créé par la transformation XSL du XML SOAP qui a été renvoyé à partir du service Web basé sur RPG.
Téléchargez cette ressource
Sécuriser Microsoft 365 avec une approche Zero-Trust
Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.
Les articles les plus consultés
- Une baie de stockage c’est quoi ?
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Afficher les icônes cachées dans la barre de notification
- Cybersécurité Active Directory et les attaques de nouvelle génération
Les plus consultés sur iTPro.fr
- Data streaming : le nouveau socle stratégique de l’IA en entreprise
- Ransomware en santé : la double extorsion fait exploser la facture en Europe
- Les fuites de données explosent en France, désormais pays le plus touché d’Europe
- L’IA accélère les attaques et expose les identités non gouvernées
Articles les + lus
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
À la une de la chaîne Tech
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
