---
title: "Services web REST pour la gestion des données"
date: "2016-02-24"
categories: 
  - "data-integration"
  - "json"
  - "tools"
tags: 
  - "data-mapping"
  - "gps-apps"
  - "mapforce"
  - "rest-web-services"
  - "xmlspy"
description: Découvrez comment MapForce 2016 améliore les services web REST pour la transformation de données, permettant une intégration transparente des réponses XML et JSON dans vos projets.
---
Status: #blog

Tags:  #data-mapping #gps-apps #mapforce #rest-web-services #xmlspy

Categories: [data-integration](/blog/fr/category/data-integration.md) | [json](/blog/fr/category/json.md) | [xml](/blog/fr/category/xml.md)
# Services web REST pour la gestion des données

La version 2016, release 2 de MapForce, offre des fonctionnalités améliorées pour : [Correspondance des données des services web](https://www.altova.com/fr/mapforce.html#data_integration), offrant une prise en charge robuste pour les services Web REST. MapForce accepte XML ou JSON comme réponse du service Web, permet la définition de paramètres et prend en charge les en-têtes HTTP personnalisés. Les utilisateurs peuvent définir l'interface du service Web manuellement ou en important les paramètres à partir d'un fichier WADL ou d'une URL. La définition manuelle des paramètres du service Web REST permet aux développeurs de créer des paramètres à partir d'une URL de modèle. C'est une étape pratique lorsque les développeurs testent et affinent les appels REST dans une fenêtre de navigateur, car l'URL peut être copiée depuis le navigateur pour devenir le modèle.

![Les services web REST peuvent constituer un flux d'informations pour un projet de modélisation des données](/blog/images/shutterstock_88166515.jpg)

<!--more-->

Nous avons déjà souligné que les coordonnées enregistrées par les systèmes GPS sont précises, mais.. [Les données d'altitude sont notoirement imprécises](https://www.altova.com/blog/rest-services-as-data-sources-for-mobile-apps/). Le service géologique américain (USGS) propose un service web REST qui accepte des requêtes contenant la longitude et la latitude, et qui fournit des données d'altitude précises, soit au format XML, soit au format JSON. Nous pouvons utiliser ce service web dans une application MapForce pour mettre à jour les données GPS provenant d'un appareil Garmin, et convertir simultanément le format des données de XML à JSON.

Nous allons commencer par tester le service web dans une fenêtre de navigateur. L'URL indiquée ci-dessous ouvre un formulaire de saisie permettant de générer une requête d'exemple :

![Formulaire de saisie pour une requête concernant un point d'altitude unique](/blog/images/PointQueryInputCapture_clip.png)

Lorsque nous cliquons sur le bouton "Obtenir l'altitude", le formulaire génère une requête REST GET complète, la soumet, et affiche le résultat ci-dessous. Nous pouvons utiliser ce résultat pour modéliser la réponse et l'utiliser pour notre mappage de données.

![Résultat de la requête sous forme de données JSON](/blog/images/PointQueryResultCapture.png)

Nous allons ajouter le service web à notre mappage en cliquant sur le bouton "Insérer une fonction de service web" dans la barre d'outils de MapForce. Cela ouvre la fenêtre de configuration de l'appel du service web, où nous devons fournir l'URL du service de l'USGS.

![Partie de la boîte de dialogue des services Web REST de MapForce permettant de spécifier l'URL du service](/blog/images/drop-in-service-def-from-dialog.png)

Ensuite, nous devons définir les paramètres de la requête et le corps de la réponse, ce qui permettra de créer les éléments nécessaires à la correspondance, comme vous pouvez le constater ci-dessous dans la partie suivante de la fenêtre de configuration de l'appel.

![Partie de la boîte de dialogue des services web REST de MapForce, permettant de définir les structures de requête et de réponse](/blog/images/ws-response-structure.png)

Nous avons généré facilement un schéma JSON dans XMLSpy pour définir la réponse, en nous basant sur le fichier d'exemple JSON enregistré à partir de la fenêtre du navigateur. Ci-dessous, vous trouverez la vue du schéma XMLSpy de la réponse convertie :

![Vue du schéma XMLSpy pour le schéma JSON de la réponse à la requête](/blog/images/json_query_result_Capture_alt.png)

Le formulaire de saisie des données d'altitude du USGS nous a fourni toutes les informations nécessaires pour définir les paramètres d'entrée, ce qui nous permet de les ajouter à la section suivante de la boîte de dialogue des paramètres d'appel :

![Partie de la boîte de dialogue des services Web REST de MapForce permettant de spécifier les paramètres d'entrée de la requête](/blog/images/input-parameters.png)

Les unités et les valeurs de sortie pour chaque requête ne changeront pas pendant l'exécution, et nous aurions pu spécifier des valeurs fixes. Au lieu de cela, nous les fournirons dans la configuration sous forme de constantes. Tous les paramètres de sécurité nécessaires seront également configurés dans la fenêtre de dialogue des paramètres d'appel. Lorsque nous cliquons sur "OK" pour fermer la fenêtre de dialogue, la fonction du service web est ajoutée à la configuration.

![L'interrogation d'altitude du USGS, utilisée comme fonction dans la conception de la cartographie des données MapForce](/blog/images/bare-WS-in-mapping-Capture.png)

Chaque point de tracé dans le fichier GPX source fournira un ensemble de coordonnées. Pendant l'exécution de la cartographie, une requête GET aux services web interrogera le USGS à chaque fois qu'un point de tracé est traité, et la réponse fournira des données d'altitude de remplacement.

Il ne reste plus qu'à connecter les éléments de la requête et de la réponse aux composants d'entrée et de sortie, comme illustré ci-dessous. Les constantes relatives aux unités et au type de sortie sont visibles en haut à gauche, et la valeur d'altitude est arrondie à deux décimales avant d'être insérée dans la sortie.

![La requête d'altitude de l'USGS, intégrée à la conception de cartographie de données MapForce, avec les entrées et les sorties correctement connectées](/blog/images/Mapped_ws_Capture.png)

Veuillez noter que la sortie est un fichier JSON. Le composant d'entrée n'est pas visible dans cette vue partielle de la configuration, mais il s'agit d'un fichier GPX standard au format XML. Les lignes de connexion de la configuration, qui entrent par la gauche, passent derrière la fonction du service web illustrée et se connectent au composant de sortie, représentent toutes des valeurs qui seront copiées sans modification du fichier XML d'entrée vers les éléments JSON correspondants.

Lorsque nous cliquons sur le bouton "Sortie MapForce", la transformation est exécutée et un fichier JSON est généré, comme on peut le constater dans la vue partielle présentée ici :

![Vue partielle de la sortie de cartographie de données de MapForce, présentée sous forme de fichier JSON](/blog/images/json_output_Capture.png)

Dans un environnement de production, nous pouvons enregistrer la configuration sous forme de fichier d'exécution MapForce, afin de permettre un traitement automatisé par le serveur MapForce, soit directement en ligne de commande, soit sous le contrôle du serveur FlowForce.

[Altova MapForce](https://www.altova.com/fr/mapforce.html) est un outil graphique de cartographie, de conversion et d'intégration de données, primé, qui permet de faire correspondre des données entre n'importe quelle combinaison de formats, notamment XML, bases de données, EDI, XBRL, fichiers plats, Excel, JSON et/ou services web. [Téléchargez une version d'essai gratuite et entièrement fonctionnelle et testez-le par vous-même !](https://www.altova.com/fr/download-trial.html)
