Partager via


Utiliser les API REST pour étendre les fonctionnalités des applications canevas

Microsoft Power Platform vous permet d’étendre les fonctionnalités de votre application Power Apps en utilisant des API REST. Lorsqu’il s’agit d’algorithmes complexes ou de nombreuses sources de données, changer la logique de l’application canevas vers une API RESTful peut être un bon choix pour vous aider à maintenir vos formules au sein de votre application canevas Power Apps dans un format simple tout en déplaçant les fonctionnalités plus complexes côté serveur. Les connecteurs personnalisés Power Platform permettent aux applications canevas d’utiliser l’API REST comme une autre source de données.

Astuce

L’article fournit un exemple de scénario et une représentation visuelle de la façon d’utiliser les API REST pour étendre les fonctionnalités des applications canevas. Cette solution est un exemple d’architecture de scénario généralisé, qui peut être utilisé pour de nombreux scénarios et secteurs différents.

Diagramme d’architecture

Diagramme d’architecture illustrant le workflow d’utilisation des API REST pour étendre les fonctionnalités des applications canevas

Flux de travail

  1. Application canevas : l’application canevas Power Apps utilise le connecteur personnalisé pour accéder aux opérations exposées par la fonction Azure. L’utilisateur s’authentifie auprès de l’application à l’aide d’Entra ID et l’accès aux données est limité aux données auxquelles l’utilisateur a accès.
  2. Connecteur personnalisé : le connecteur personnalisé décrit les opérations que l’application peut utiliser à partir de l’API REST qui, dans l’exemple, est implémentée par une fonction Azure. En utilisant un connecteur personnalisé, l’application canevas Power Apps est en mesure d’utiliser la logique comme toute autre source de données.
  3. Applications Microsoft Entra ID : la fonction Azure est sécurisée à l’aide d’une application Microsoft Entra ID. Une deuxième application Microsoft Entra ID est enregistrée et configurée sur le connecteur personnalisé pour permettre à l’application canevas Power Apps d’accéder aux opérations de la fonction Azure.
  4. Fonction Azure : la fonction Azure implémente l’API RESTful qui offre une ou plusieurs opérations exposées à l’application canevas Power Apps, soit en exportant un connecteur personnalisé à partir du portail Azure, soit par configuration manuelle. La fonction Azure est sécurisée par un enregistrement de l’application Entra ID pour garantir uniquement les appelants autorisés.
  5. Azure Cosmos DB : la fonction Azure peut utiliser Azure Cosmos DB ou Azure SQL ou tout autre magasin de données cloud nécessaire pour gérer les données. En fait, la fonction pourrait travailler avec des données dans Microsoft Dataverse en utilisant l’approche de fonction en raison de la complexité de la logique.

Composants

  • Environnement Power Platform : contient les ressources Power Platform comme Power Apps qui implémentent l’expérience utilisateur de l’application En magasin. Ces ressources sont déplacées d’un environnement à un autre (par exemple, du développement au test) à l’aide de solutions Dataverse.
  • Power Apps : Power Apps est utilisé pour mettre en œuvre l’expérience utilisateur de la solution. Les créateurs peuvent créer l’application à l’aide du connecteur personnalisé créé par le développeur de la fonction Azure en tant que source de données d’application.
  • Connecteur personnalisé : les connecteurs personnalisés Power Platform décrivent les opérations et les structures de données d’une API RESTful. Ils permettent d’utiliser facilement l’API à partir de ressources telles qu’une application canevas Power Apps. Lorsqu’ils sont utilisés à partir de Power Apps, ils permettent de faire référence à l’API comme toute autre source de données.

Détails du scénario

Power Apps permet aux organisations de créer une expérience utilisateur personnalisée et, en utilisant les API REST, la logique métier est centralisée et accessible par l’application à l’aide d’un connecteur personnalisé. Cette approche peut également permettre à l’application Power Apps d’agir comme un intégrateur de plusieurs services backend, en fournissant une vue unique à l’utilisateur des données et de la logique à partir de toutes les sources. En utilisant l’approche de l’API REST, vous pouvez également changer la complexité de l’interaction avec plusieurs autres systèmes pour implémenter l’API REST et simplifier l’implémentation de l’application canevas, tout en offrant la même expérience utilisateur.

Dans l’exemple ci-dessus, l’application En magasin est créée à l’aide d’une application canevas Power Apps. L’application permet à un associé du magasin d’enregistrer rapidement une demande de notification de rupture de stock pour un client lorsqu’un article est en rupture de stock. L’application utilise une seule opération, RecordBackorder, configurée sur un connecteur personnalisé qui décrit une opération de la fonction Azure backend. Dans cet exemple, la fonction Azure est l’implémentation de l’API REST. Vous pouvez utiliser n’importe quelle technologie permettant la création d’un service RESTful pour implémenter ce modèle.

Cette architecture offre une certaine flexibilité, mais signifie également que davantage de travail de la part des développeurs « code-first » est nécessaire pour développer et maintenir le service RESTful et la couche de données. En général, à mesure que la complexité des formules de l’application canevas augmente, vous devez envisager ce type d’architecture. Par exemple, lorsque plusieurs sources de données sont nécessaires pour créer une seule vue, l’utilisation d’une couche d’API peut aider à fournir une expérience performante, car la réponse des données peut être configurée côté serveur et fournie au client plus efficacement. L’utilisation de cette couche intermédiaire signifie que vous pouvez ajouter une couche de mise en cache côté serveur et implémenter une télémétrie plus riche pour l’application.

Considérations

Ces considérations mettent en œuvre les piliers de Power Platform Well-Architected, un ensemble de principes directeurs qui améliorent la qualité d’une charge de travail. Pour en savoir plus, consultez Microsoft Power Platform Well-Architected.

Fiabilité

Concevoir votre charge de travail pour éviter la complexité inutile : l’utilisation de l’approche de l’API REST à partir d’une application Power Apps via un connecteur personnalisé évite la complexité inutile et centralise également la logique là où elle pourrait être utilisée par d’autres applications de l’organisation. Le connecteur personnalisé permet au créateur Power Apps d’utiliser les opérations de l’API RESTFul comme toute autre opération de la source de données.

Test de résilience et de disponibilité : en déplaçant la logique de l'application canevas à l’API REST, vous devriez être en mesure de tester l’API de manière indépendante et séparée de l’application qui l’utilise.

Mesurer et publier les indicateurs d’état : la télémétrie doit être capturée à partir du composant de l’API REST pour suivre son état. Par exemple, l’utilisation de la journalisation Azure Monitor – Application Insights garantirait un suivi adéquat du composant.

Sécurité

Créer une segmentation et des périmètres intentionnels : assurez-vous que l’application utilise des environnements Power Platform distincts pour prendre en charge les phases du cycle de vie de votre application et assurez-vous que seuls les utilisateurs appropriés ont accès à chaque phase pour prendre en charge vos stratégies de segmentation. Il est également important que les applications Entra ID enregistrées soient distinctes entre les environnements afin de préserver la protection de chaque phase des données et de ne pas mélanger les environnements.

Excellence opérationnelle

Adopter des pratiques de déploiement sûres : standardisez le déploiement des éventuelles modifications de l’application Power Apps en utilisant des processus de déploiement automatisés, comme des pipelines. Ne promouvez l’application en production qu’après avoir testé les modifications.

Mettre en œuvre une stratégie d’atténuation des échecs de déploiement : avec la dépendance entre l’application et l’API REST, vous devez vous assurer de disposer d’une stratégie testée pour atténuer un déploiement de l’un ou de l’autre qui développe des erreurs après la mise à jour de l’un des composants.

Efficacité des performances

Conception pour répondre aux exigences de performances : évaluez les performances de votre solution et les exigences en matière de volume de données. L’évaluation doit inclure la façon d’accéder aux données et l’évaluation de la façon dont Power Apps utilise différentes sources de données directement peut être trop communicative avec les sources de données. Cela peut entraîner un ralentissement des performances en raison de la latence de la requête individuelle envoyée à chaque magasin de données. Par exemple, si votre application avait une logique qui fonctionnait sur un grand nombre de lignes dans la source de données, vous pourriez être en mesure de transférer tout ce trafic réseau vers la fonction Azure backend. Réduction à une seule interaction avec l’API REST qui, à son tour, gérerait l’interaction avec les multiples autres sources de données où cela pourrait être fait plus efficacement.

Optimiser la logique : au fur et à mesure que la logique devient plus complexe dans une application canevas, Azure Functions ou des implémentations de l’API RESTful backend similaires peuvent décharger cette logique dans un service centralisé réutilisable. L’utilisation de la fonctionnalité de connecteur personnalisé pour décrire ces API RESTful permet aux applications canevas d’utiliser leurs opérations configurées comme n’importe quelle autre source de données.

Tester les performances : en plus de tester les fonctionnalités et les échecs, il est important de tester et de développer une base de référence pour les performances et de l’évaluer dans le cadre de votre cycle de lancement si l’API est sensible aux modifications des temps de finalisation du travail.

Optimisation de l’expérience

Conception pour l’efficacité : les applications qui permettent aux utilisateurs d’accéder à plusieurs sources de données à partir d’une seule application Power Apps sans nécessiter qu’elles interagissent avec plusieurs applications individuelles rendent l’utilisateur plus efficace et constituent une bonne utilisation d’une expérience visuelle plus personnalisée.

Contributeurs

Microsoft gère cet article. Les contributeurs suivants ont écrit cet article.

Principaux auteurs :