Partage via


Importer une application conteneur Azure en tant qu’API

S’APPLIQUE À : tous les niveaux de Gestion des API

Cet article explique comment importer une application conteneur Azure dans Gestion des API Azure et tester l’API importée en utilisant le portail Azure.

Remarque

Cette fonctionnalité n’est actuellement pas disponible dans les espaces de travail.

Dans cet article, vous apprendrez comment :

  • Importer une application conteneur qui expose une API web
  • Tester l’API dans le portail Azure

Exposer une application conteneur à l’aide de Gestion des API

Azure Container Apps vous permet de déployer des applications conteneurisées sans avoir à gérer une infrastructure complexe. Les développeurs d’API peuvent écrire du code en utilisant leur langage de programmation ou leur infrastructure préférés, créer des microservices avec une prise en charge complète de Distributed Apps Runtime (Dapr) et mettre à l’échelle en fonction du trafic HTTP ou d’autres événements.

Gestion des API est l’environnement recommandé pour exposer une API web hébergée par une application conteneur, et ce pour plusieurs raisons :

  • Découpler la gestion et la sécurisation du serveur frontal exposé aux consommateurs d’API à partir de la gestion et de la surveillance de l’API web principale
  • Gérer les API web hébergées en tant qu’applications conteneur dans le même environnement que vos autres API
  • Appliquer des stratégies pour modifier le comportement de l’API, comme la limitation du taux d’appels
  • Diriger les consommateurs d’API vers le portail des développeurs personnalisable de Gestion des API pour découvrir et apprendre à connaître vos API, demander l’accès et les essayer

Pour plus d’informations, consultez En savoir plus sur Gestion des API.

Spécification OpenAPI et opérations génériques

Gestion des API prend en charge l’importation d’applications conteneur qui fournissent une spécification OpenAPI (définition Swagger). Toutefois, une spécification OpenAPI n’est pas obligatoire. Nous vous recommandons de fournir une spécification OpenAPI. Gestion des API peut importer des opérations individuelles, ce qui vous permet de valider, gérer, sécuriser et mettre à jour les configurations pour chaque opération séparément.

Si l’application conteneur expose une spécification OpenAPI, Gestion des API crée des opérations d’API qui mappent directement à la définition. Gestion des API recherchera une spécification OpenAPI à plusieurs emplacements :

  • La configuration de l’application conteneur
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Si aucune spécification OpenAPI n’est fournie, Gestion des API génère des opérations génériques pour les verbes HTTP courants (GET, PUT, etc.). Vous pouvez toujours tirer parti des mêmes fonctionnalités de Gestion des API, mais les opérations ne sont pas définies au même niveau de détail.

Dans les deux cas, vous pouvez modifier ou ajouter des opérations à l’API après l’importation.

Exemple

Votre application conteneur principale peut prendre en charge deux opérations GET :

  • https://myappservice.azurewebsites.net/customer/{id}
  • https://myappservice.azurewebsites.net/customers

Vous importez l’application conteneur dans votre service Gestion des API sous un chemin d’accès tel que https://contosoapi.azure-api.net/store. Le tableau suivant répertorie les opérations qui sont importées dans Gestion des API, avec ou sans spécification OpenAPI :

Type Opérations importées Exemples de demandes
Spécification OpenAPI GET /customer/{id}

GET /customers
GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers
Caractère générique GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers

L’opération générique autorise les mêmes requêtes au service back-end que les opérations dans la spécification OpenAPI. Toutefois, les opérations spécifiées par OpenAPI peuvent être gérées séparément dans Gestion des API.

Prérequis

Accéder à votre instance Gestion des API

  1. Dans le Portail Azure, recherchez et sélectionnez Services API Management.

    Sélectionnez les services Gestion des API

  2. Dans la page Services Gestion des API, sélectionnez votre instance Gestion des API.

    Sélectionnez votre instance Gestion des API

Importer et publier une API back-end

  1. À partir du portail Azure, accédez à votre service Gestion des API, puis sélectionnez API dans le menu.

  2. Sélectionnez Container App dans la liste.

    Créer à partir de Container App

  3. Appuyez sur Parcourir pour afficher la liste des applications conteneur dans votre abonnement.

  4. Sélectionnez une application conteneur. Si une définition OpenAPI est associée à l’application conteneur sélectionnée, Gestion des API l’extrait et l’importe. Si aucune définition OpenAPI n’est trouvée, Gestion des API expose l’API en générant des opérations génériques pour les verbes HTTP courants.

  5. Ajoutez un suffixe d’URL d’API. Le suffixe est un nom qui identifie cette API spécifique dans cette instance Gestion des API. Il doit être unique dans cette instance Gestion des API.

  6. Publiez l’API en l’associant à un produit. Dans ce cas, le produit « Illimité » est utilisé. Si vous souhaitez que l’API soit publiée et mise à la disposition des développeurs, ajoutez-la à un produit.

    Notes

    Les produits sont des associations d’une ou de plusieurs API. Vous pouvez inclure de nombreuses API et les proposer aux développeurs dans le portail des développeurs. Les développeurs doivent s’abonner à un produit pour obtenir l’accès à l’API. Quand ils s’abonnent à un produit, ils obtiennent une clé d’abonnement qui est valable pour toutes les API de ce produit. Si vous avez créé l’instance Gestion des API, vous êtes un administrateur et vous êtes abonné à tous les produits par défaut.

    Chaque instance du service Gestion des API est fournie avec deux exemples de produits lors de sa création :

    • Starter
    • Illimité
  7. Entrez d’autres paramètres d’API. Vous pouvez définir les valeurs lors de la création, ou les configurer ultérieurement en accédant à l’onglet Paramètres. Les paramètres sont expliqués dans le tutoriel Importer et publier votre première API.

  8. Sélectionnez Create (Créer).

    Créer une API à partir de Container App

Tester la nouvelle API dans le Portail Azure

Les opérations peuvent être directement appelées depuis le portail Azure, qui permet d’afficher et de tester les opérations d’une API. Vous pouvez également tester l’API dans le portail des développeurs ou en utilisant vos propres outils clients REST.

  1. Sélectionnez l’API que vous avez créée à l’étape précédente.

  2. Sélectionnez l’onglet Test.

  3. Sélectionnez une opération.

    La page affiche des champs pour les paramètres de requête et des champs pour les en-têtes. L’un des en-têtes est Ocp-Apim-Subscription-Key, pour la clé d’abonnement du produit qui est associé à cette API. Si vous avez créé l’instance Gestion des API, la clé est renseignée automatiquement, car vous êtes déjà administrateur.

  4. Appuyez sur Envoyer.

    Lorsque le test est réussi, le back-end répond avec 200 OK et des données.

Tester une opération générique dans le portail

Lorsque des opérations génériques sont générées, elles peuvent ne pas correspondre directement à l’API back-end. Par exemple, une opération GET générique importée dans Gestion des API utilise le chemin d’accès / par défaut. Toutefois, votre API back-end peut prendre en charge une opération GET à l’emplacement suivant :

/api/TodoItems

Vous pouvez tester le chemin d’accès /api/TodoItems comme suit.

  1. Sélectionnez l’API que vous avez créée, puis sélectionnez l’opération.

  2. Sélectionnez l’onglet Test.

  3. Dans Paramètres du modèle, mettez à jour la valeur à côté du nom générique (*). Par exemple, entrez api/TodoItems. Cette valeur est ajoutée au chemin d’accès / pour l’opération générique.

    Tester une opération générique

  4. Sélectionnez Envoyer.

Ajouter d’autres API

Vous pouvez composer une API à partir de plusieurs API exposées par différents services, notamment :

  • Une spécification OpenAPI
  • Une API SOAP
  • Une API GraphQL
  • Une application web hébergée dans Azure App Service
  • Application Azure Function
  • Azure Logic Apps
  • Azure Service Fabric

Pour ajouter une autre API à votre API existante, effectuez les étapes suivantes.

Notes

Une fois que vous avez importé une autre API, les opérations sont ajoutées à votre API actuelle.

  1. Accédez à votre instance Gestion des API Azure dans le portail Azure.

    Accéder à l’instance Gestion des API Azure

  2. Sélectionnez API dans la page Vue d’ensemble ou dans le menu situé à gauche.

    Sélectionner des API

  3. Cliquez sur ... à côté de l’API à laquelle vous souhaitez ajouter une autre API.

  4. Sélectionnez Importer dans le menu déroulant.

    Sélectionner Importer

  5. Sélectionnez un service à partir duquel importer une API.

    Sélectionner un service

Étapes suivantes

Transform and protect your API (Transformer et protéger votre API)