Créer et récupérer des données en invoquant un service Web REST
Ce scénario décrit un Job simple qui invoque un service Web REST afin de créer un enregistrement client du côté serveur et de récupérer les informations du client. Une fois exécuté, ce Job affiche les informations correspondantes dans la console de la vue Run.
Pour plus de technologies supportées par Talend, consultez Composants Talend.
-
Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : deux composants tREST et deux composants tLogRow. Renommez les deux composants tREST afin qu'ils décrivent au mieux les actions à effectuer.
-
Reliez chaque composant tREST à un tLogRow à l'aide d'un lien Row > Main.
-
Connectez le premier composant tREST au second tREST à l'aide d'une connexion de type Trigger > OnSubjobOk.
-
Double-cliquez sur le premier composant tREST afin d'ouvrir sa vue Basic settings.
-
Renseignez le champ URL avec l'adresse URL du serveur Web que vous êtes sur le point d'invoquer. Notez que l'adresse URL fournie dans ce scénario est destinée essentiellement à la démonstration, ce n'est pas une adresse valide.
-
À partir de la liste HTTP Method, sélectionnez POST afin d'envoyer une requête HTTP permettant de créer un nouvel enregistrement.
-
Cliquez sur le bouton [+] afin d'ajouter une ligne au tableau HTTP Headers, et saisissez la paire nom-valeur (name-value) adéquate, soumise aux définitions de votre fournisseur de service, en indiquant le type de média des données utiles (payload) à envoyer du côté serveur. Dans ce scénario, saisissez Content-Type et application/xml. Pour plus d'informations concernant les types de média Internet, consultez http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.7 (uniquement en anglais) (en anglais).
-
Saisissez dans le champ HTTP Body les données utiles (payload) à charger du côté serveur Dans ce scénario, saisissez <Customer><name>Steven</name></Customer>, pour créer un enregistrement d'un nouvel utilisateur appelé Steven.
Si vous souhaitez inclure des guillemets doubles dans votre payload, assurez-vous d'utiliser un caractère d'échappement, la barre oblique inversée, avant chaque guillemet. Dans ce scénario par exemple, saisissez <Customer><name>\"Steven\"</name></Customer> si vous souhaitez mettre le prénom Steven entre guillemets doubles.
-
Double-cliquez sur le second tREST afin d'ouvrir sa vue Basic settings.
-
Renseignez le champ URL avec la même adresse URL que celle utilisée dans le premier composant tREST.
-
Dans la liste HTTP Method, sélectionnez GET afin d'envoyer une requête HTTP pour récupérer les enregistrements existants.
-
Dans la vue Basic settings de chaque tLogRow, cochez les cases Print component unique name in front of each output row et Print schema column name in front of each value pour identifier au mieux les flux de sortie.
-
Enregistrez votre Job et appuyez sur F6 pour l'exécuter.
La console indique que le premier composant tREST envoie une requête HTTP côté serveur afin de créer un·e nouvel·le utilisateur·rice appelé Steven et que le second composant tREST lit avec succès les données côté serveur comprenant les informations de l'utilisateur ou de l'utilisatrice nouvellement créé.