Web API (API Web)
Les données de grande qualité sont une partie essentielle de nombreuses applications construites aujourd'hui et le composant Web API permet à ces applications de récupérer des données à partir de n'importe quelle API (interface de programmation d'applications) public ou privé sur le web. Pour les développeurs plus avancés qui ont un accès en écriture à une API privée, ce composant permet également de télécharger et de supprimer des données.
Pour savoir quelles API publiques sont disponibles, nous vous recommandons cette liste tirée de la devise de Todd
Vue d'ensemble
Pour commencer
Pour la plupart des API publiques, vous devrez probablement d'abord créer un compte pour obtenir votre propre clé API unique. Cela permet généralement d'éviter que les particuliers fassent trop de demandes ou de faire payer les développeurs lorsqu'ils dépassent certaines limites de gratuité.
Une fois que vous avez la clé API, vous devez entrer l'URL unique dans le champ de propriété du composant API Web
Propriété
Description
URL
L'url de la requête web qui contient généralement une clé API
Query Parameter
Précise certains paramètres des données
Headers
Spécifie certaines méta-données, par exemple : noms d'utilisateur et mots de passe
Définition des paramètres de recherche et des en-têtes
Les paramètres de requête et les en-têtes peuvent être définis dans le concepteur ou dans l'éditeur de blocs. Dans l'exemple ci-dessous, vous pouvez ajouter n'importe quelle paire property:value
(propriété:valeur) que vous souhaitez. Vous pouvez ajouter autant de paramètres à votre application que vous le souhaitez, mais chaque paramètre doit être ajouté à la fois.
Dans l'éditeur de blocs, il est possible d'utiliser le bloc create object
pour ajouter simultanément plusieurs paires property:value
(propriété:valeur).
En plus de créer vos propres objets, il est également possible d'utiliser JSON pour spécifier les paires property:value pour vos paramètres de requête ou vos en-têtes.
Obtenir et formater (analyser) les données
Ce bloc récupère et met en forme les données de l'API Open Weather Map
Pour récupérer les données d'une API, il suffit d'utiliser le bloc Get
.
Événement
Description
Get(response
, status
, error
)
Exécute une requête HTTP GET en utilisant la propriété Url et récupère la response
. Signale le status
de la demande et si la demande n'aboutit pas, signale une error
La plupart des API renvoient des données dans un format non utilisable par votre application. Nous allons donc prendre quelques instants pour vous présenter quelques exemples de formatage de données (également appelé "parsing") à l'aide de nos blocs Object
Exemple 1 : Ouvrir l'API de la carte météorologique
Vous en trouverez un exemple concret dans l'application Office Weather & Traffic.
L'un des formats de sortie les plus courants pour les API est JSON, abréviation de Javascript Object Notation. L'API Open Weather Map renvoie un fichier JSON comme celui ci-dessous.
Convertir JSON en Object
Si vous voulez simplement récupérer la température ("temp" : à la ligne 6), vous devrez d'abord convertir la réponse JSON en objets, une entité comme une personne qui a des propriétés pour les décrire comme intelligentes. Les objets peuvent être intégrés dans un autre objet.
Dans votre réponse JSON, les objets peuvent être trouvés entre les "guillemets" suivis d'un deux-points :. Les propriétés de l'objet suivent le deux-points : mais se trouvent à l'intérieur des {crochets}.
Dans l'exemple ci-dessus, "coord" :
, "weather" :
, "base" :
et "main" :
sont à la fois des objets et des propriétés de l'objet global puisqu'ils sont contenus dans les {crochets}.
Obtenir la propriété d'un objet
Une fois que vous avez converti les JSON en objets, vous pouvez alors préciser les objects
et les property
qui vous intéressent. Pour obtenir la température ("temp" :
à la ligne 6), on voudra trouver la propriété temp
de l'objet principal qui est la propriété de l'objet global
Exemple 2 : API de la matrice de distance de Google Maps
Vous pouvez trouver un exemple de cette application dans l'exemple de l'application Ride.
La sortie JSON de l'API de la matrice de distance de Google Maps semble similaire à l'API Open Weather Map, à une exception notable près : elle inclut des objets, des propriétés et des listes. Les listes sont des éléments délimités par des [ crochets ].
Si vous voulez récupérer la propriété "text"
à la ligne 13, vous devrez faire :
convertir le JSON en un objet
sélectionner la propriété
"rows"
de l'objetsélectionnez le premier élément de la liste
sélectionner la propriété
"elements"
de l'objet rowssélectionnez le premier élément de la liste
sélectionner la propriété
"duration"
des éléments objetsélectionner la propriété
"text"
de l'objet durée
Vous pouvez voir l'exemple ci-dessous pour voir comment cela se présente en utilisant les blocs Objet et Liste
Charger des données
Le téléchargement et la suppression de données sont généralement réservés à une API privée dont vous ou votre organisation êtes propriétaire
Événement
Description
Put (response
, status
, error
)
Exécute une requête HTTP PUT en utilisant la propriété Url et récupère la response
. Rapporte le status
de la demande et si la demande n'aboutit pas, signale une error
Post (response
, status
, error
)
Effectue une requête HTTP POST en utilisant la propriété Url et récupère la response
. Rapporte le status
de la demande et si la demande n'aboutit pas, signale une error
Patch (response
, status
, error
)
Exécute une requête HTTP PATCH en utilisant la propriété Url et récupère la response
. Rapporte le status
de la demande et si la demande n'aboutit pas, signale une error
Supprimer des données
Événement
Description
Delete (response
, status
, error
)
Effectue une demande HTTP de SUPPRESSION en utilisant la propriété Url et récupère la response
. Rapporte le status
de la demande et si la demande n'aboutit pas, signale une error
Voir aussi
Vous pouvez également poster et recevoir des messages entre une page web et un visualiseur web en utilisant la fonction "Post Message". Pour en savoir plus à ce sujet, cliquez ici.
Last updated
Was this helpful?