En savoir plus sur la conception d'API personnalisée

Dans Oracle Mobile Hub, vous pouvez créer des API REST personnalisées qui peuvent être utilisées par vos applications mobiles.

Si vous êtes développeur d'applications mobiles, utilisez le concepteur d'API pour esquisser et tester les adresses que vous définissez, puis demandez à un développeur de service de remplir les détails de l'API (ajouter des types de ressource ou des caractéristiques, fournir un schéma et définir l'accès à l'API et à ses adresses), et de l'implémenter dans JavaScript. Si vous êtes développeur de services, utilisez API Designer pour configurer explicitement une API complète que vous pouvez tester avec des données fictives. Vous pouvez également générer des API personnalisées à partir de connecteurs REST ou Fusion Applications sans écrire de code.

Contrairement aux API de plate-forme Oracle Mobile Hub, qui fournissent un ensemble de base de services connus, les API personnalisées vous permettent d'utiliser Node.js pour coder tout service dont votre application mobile a besoin, publié via une interface REST. Vous pouvez relayer des données à l'aide d'un connecteur Oracle Mobile Hub vers un service back-end, qui transforme des données complexes en charges utiles adaptées aux appareils mobiles. L'utilisation d'API personnalisées pour créer un catalogue de services réutilisables vous permet d'économiser beaucoup de temps qui, autrement, pourrait être consacré à la recréation et à la maintenance périodiques des détails d'implémentation dans vos applications mobiles.

A propos du processus de conception d'API

Le concepteur d'API vous guide tout au long du processus de création d'une API personnalisée.

Vous pouvez créer rapidement une version brouillon de l'API en quelques étapes seulement :

  1. Ajoutez les informations de base (nom de l'API, type de média du message et brève description).

  2. Définissez une adresse en définissant une ressource et au moins une méthode pour celle-ci.

  3. Définir la sécurité d'accès.

  4. Testez votre adresse après avoir défini au moins une ressource.

Vous pouvez créer des données de simulation pour tester et valider rapidement une adresse, même si vous n'avez pas complètement terminé la configuration de votre API. Lorsque vous définissez le corps du message, vous pouvez fournir des valeurs d'espace réservé pour vérifier que les données correctes sont envoyées ou renvoyées.

Pour compléter entièrement votre API, utilisez le concepteur d'API afin d'ajouter les composants essentiels pour une API robuste :

  • Fournissez les métadonnées d'API (c'est-à-dire les attributs de base de l'API, à savoir le nom d'affichage de l'API, le nom de l'API et la brève description) ou, si vous disposez déjà d'un document RAML contenant la configuration de votre API, vous pouvez le télécharger vers le concepteur d'API. Toutes les informations (métadonnées, ressources, méthodes et schéma du corps du message) sont extraites du document RAML et chargées dans le concepteur d'API, ce qui vous permet de tester rapidement vos adresses ou de modifier votre configuration d'API.

  • Ajoutez des ressources racine et imbriquées.

  • Ajoutez des méthodes pour agir sur les ressources.

  • Créez un schéma pour décrire le corps des données.

  • Testez vos points de terminaison lors de la conception à l'aide d'exemples de données et apportez les modifications nécessaires.

  • Autorisez l'accès anonyme à votre API ou indiquez les rôles qui peuvent y accéder.

  • Ajouter de la documentation pour votre API personnalisée

Plus tard, lorsque vous créez d'autres API, vous constaterez peut-être que vous définissez plusieurs fois les mêmes méthodes, que vous utilisez les mêmes paramètres, etc. Vous pouvez réduire la redondance en créant des types et des caractéristiques de ressource. Si votre API est toujours à l'état brouillon, vous pouvez revenir à votre configuration et ajouter les types de ressource et les caractéristiques que vous avez définis.

A propos de la génération d'API personnalisées pour les connecteurs

Oracle Mobile Hub peut générer du code personnalisé à partir de connecteurs pour se connecter à des services externes. En tant que développeur de services, vous pouvez sélectionner un connecteur Oracle Fusion Applications ou un connecteur REST créé avec un descripteur valide, générer l'API personnalisée et utiliser l'API générée pour faciliter l'appel de ces services à partir des implémentations de vos API personnalisées ou directement à partir d'une application mobile.

Un connecteur est un moyen de permettre à un back-end mobile de communiquer avec un service externe tel qu'un système d'entreprise ou des API tierces, ce qui permet à une application mobile d'interagir avec les fonctions de ce service. Une API de connecteur est une configuration permettant de communiquer avec un service externe spécifique pour envoyer et recevoir des données.

En tant que développeur de service, vous pouvez générer une API personnalisée qui expose les méthodes d'une API de connecteur et fournit une implémentation par défaut sans écrire de code.

L'API personnalisée est générée avec une adresse pour chaque ressource de l'API de connecteur. Elle est ouverte dans le concepteur d'API pour que vous puissiez continuer à indiquer les détails de l'API, tels que les rôles. L'implémentation par défaut, qui transmet toutes les demandes provenant de l'API personnalisée générée à l'API de connecteur cible, est également générée et affectée à l'API générée. Dès que vous avez affecté des rôles à l'API s'ils sont requis pour la sécurité sur le connecteur, vous pouvez utiliser l'implémentation pour tester l'API. Vous pouvez télécharger et modifier l'implémentation, puis la télécharger.

Pouvoir créer une API personnalisée pour un connecteur signifie qu'il est beaucoup plus facile de créer un prototype que vous utilisez pour tester un connecteur. Lorsque vous trouvez des éléments à modifier, vous pouvez rapidement modifier le connecteur et générer une nouvelle API et implémentation personnalisées. Lorsque vous êtes satisfait, vous pouvez générer une version finale de l'API et de l'implémentation personnalisées.

  • Développez un connecteur REST ou un connecteur Oracle Fusion Cloud Applications défini à l'aide d'un descripteur.
  • Générez l'API personnalisée à partir du connecteur. Il s'ouvre dans le concepteur d'API, où vous pouvez définir des rôles ou indiquer l'authentification requise par l'API.
  • Vous pouvez appeler immédiatement l'API générée à partir de l'appareil mobile. L'implémentation par défaut transmet toutes les demandes provenant de l'API générée à l'API de connecteur cible.
  • Vous voudrez probablement télécharger l'implémentation et la modifier pour façonner les données renvoyées.
  • Vous pouvez revoir le connecteur et apporter des modifications aux ressources ou au descripteur du connecteur. Dans ce cas, vous devez générer une nouvelle API et une nouvelle implémentation personnalisées. Si vous apportez des modifications à l'API personnalisée générée, ces modifications ne sont pas répercutées dans le connecteur. Vous devez apporter les modifications appropriées au connecteur, puis générer à nouveau l'API personnalisée et l'implémentation.

Vous pouvez uniquement générer une API personnalisée pour un connecteur REST ou Oracle Fusion Cloud Applications, qui est défini à l'aide d'un descripteur. Vous ne pouvez pas générer d'API personnalisée pour un autre type de connecteur, ou lorsque le connecteur REST ou Oracle Fusion Cloud Applications n'a pas de descripteur.

Si vous voulez envoyer des données de formulaire multipart ou utiliser l'objet d'options http, vous devrez peut-être remplacer la méthode callConnector dans l'implémentation par votre propre code.

API de connecteur REST

Vous pouvez créer des API de connecteur pour vous connecter à des services REST externes. Vous pouvez ensuite appeler ces API de connecteur à partir des implémentations de vos API personnalisées.

Fonctionnement des API de connecteur REST

Une API de connecteur REST est une API intermédiaire permettant d'appeler des adresses REST dans des systèmes d'entreprise ou des API tierces. L'API de connecteur prend la forme d'une configuration qui donne à vos applications un moyen standard de se connecter à ces services REST et de tirer parti de la sécurité, des diagnostics et d'autres fonctionnalités fournis par Oracle Mobile Hub.

Le connecteur communique et transmet des informations entre le client et le serveur à l'aide du protocole HTTPS. Les informations transmises peuvent être au format XML ou JSON (mais uniquement au format JSON pour les services basés sur des descripteurs Swagger).

L'assistant API de connecteur REST vous guide tout au long de la création des API de connecteur REST, de la spécification d'un service distant à la définition de stratégies de sécurité en passant par le test des adresses.

Pourquoi utiliser des connecteurs plutôt que des appels directs vers des ressources externes ?

L'utilisation d'une API de connecteur REST présente les avantages suivants par rapport aux appels directs de votre code d'application vers des ressources externes :

  • Permet de simplifier la configuration des stratégies et des connexions déclaratives.

  • Avec un descripteur Swagger, détermine les ressources disponibles et crée des adresses pour vous.

  • Vous fournit des informations de diagnostic détaillées car elles sont étroitement intégrées à la structure de diagnostic d'Oracle Mobile Hub. Tous les appels REST sortants effectués via les API de connecteur sont consignés, ce qui facilite grandement le débogage.

  • Permet le suivi et l'analyse de l'utilisation des API distantes.

  • Permet de définir l'interaction avec le service lors de la conception lorsque vous testez la validité de vos adresses afin que les conditions de cette interaction ne dépendent pas des entrées utilisateur lors de l'exécution. Cela protège à la fois le système final et votre back-end mobile des dommages.

  • Fournit une approche de conception cohérente entre plusieurs types de connecteur pour interagir avec des services externes.

  • Toute modification apportée à l'interface d'un service vous permet de gérer les mises à jour, les tests et la migration nécessaires en un seul endroit.