Exemple d'utilisation d'un WebService : Google17/11/2002
Par
LFE (autres articles) Ce document a pour but de présenter l'utilisation d'un WebService sous Delphi, en prenant l'exemple de celui fourni par Google Avant-Propos 1. Qu'est ce qu'un WebService ? 2. Obtenir l'accès au service Google 3. Importer le fichier WSDL 4. Accéder au Service 5. Accéder aux résultats 6. Conclusion
Ce document a pour but de présenter d'une manière que j'espère simple l'utilisation d'un WebService.
Il ne s'agit pas d'un cours de haute voltige mais d'une implémentation pratique.
Bien entendu, tout remarque constructive est la bienvenue.
Le code a été écrit et testé avec Borland Delphi 7 Architect Français.
Le projet est téléchargeable ici.
Pour pouvoir l'utiliser, enregistrer la clé recue de Google dans le fichier RegKey.txt.
En faisant l'analogie avec un programme développé par soi-même, le WebService est une fonction, ou une librairie de
fonctions mise à disposition non dans une librairie ou un code source, mais par un serveur Web.
Les prototypes de ces fonctions sont définis dans un fichier WSDL, qui peut être comparé à un fichier d'en-tête.
D'un point de vue pratique, il s'agit d'un échange de fichiers XML, transporté par le protocole HTTP.
L'application cliente encode dans un fichier XML, la fonction qu'elle désire appeler, ainsi que les paramètres.
Ce fichier est envoyé au serveur. Le serveur le décode , éxécute le traitement demandé, encode le résultat dans un
fichier XML qui est renvoyé au client.
J'imagine bien que cette description va faire hurler les puristes, mais il me semble qu'elle donne une idée rapide et
simple de ce qu'est un WebService.
Google fournit une API sous forme de WebSerice. Cette API est une version béta mais est fonctionnelle et gratuite,
disponible pour une utilisation non-commerciale.
Elle est téléchargeable à l'adresse suivante : http://www.google.fr/apis/.
Elle est téléchargeable à l'adresse suivante : ./fichiers/apis/.
Après enregistrement, une clé est envoyée sur l'e-mail. Cette clé est nécessaire pour chaque appel au service.
La première étape est de créer un nouveau projet et d'y importer le fichier WSDL afin de pouvoir accéder
aux fonctions exportées par le serveur.
Dans le menu File/New/Other ..., sélectionner l'onglet WebServices, WSDL Importer
Dans l'assitant qui apparaît, cliquer sur le bouton Next
Doit alors apparaître une fenêtre semblable a celle qui suit, avec à gauche la liste des types et fonctions
générées et à droite, un aperçu du code
Cliquer sur le bouton Finish et enregistrer le nouveau projet dans un répertoire.
Dans le fichier qui va utiliser le WebService, ajouter la ligne suivante dans la clause Uses :
Il faut ensuite déclarer une interface permettant d'accéder au service désire :
Et la variable qui contiendra la valeur de retour :
L'étape suivante est d'acquérir l'interface vers le service désire.
L'appel au WebService se fait dès lors comme une fonction tout à fait classique.
Les paramètres sont dans l'ordre :
Pour une description plus complète des paramètres et les valeurs permises, je vous renvoie à la documentation
fournie dans l'API.
Le code suivant permet de lister les résutlats de la recherche dans une ListBox
A l'exception de l'étape d'importation du descritpif du WebService, l'utilisation est quasi identique à une fonction
classique du programme
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
|