Freigeben über


Importieren einer Azure-Container-App als API

GILT FÜR: Alle API Management-Ebenen

In diesem Artikel wird beschrieben, wie Sie eine Azure-Container-App als API in Azure API Management importieren und die importierte API mithilfe des Azure-Portals testen.

Hinweis

Dieses Feature ist derzeit in Arbeitsbereichen nicht verfügbar.

In diesem Artikel werden folgende Vorgehensweisen behandelt:

  • Importieren einer Container-App, die eine Web-API verfügbar macht
  • Testen der API im Azure-Portal

Eine Container-App mithilfe des API-Managements zugänglich machen

Mit Azure Container Apps können Sie Container-Apps bereitstellen, ohne eine komplexe Infrastruktur verwalten zu müssen. API-Entwickler können Code mit ihrer bevorzugten Programmiersprache oder ihrem Framework schreiben, Microservices mit vollständiger Unterstützung für distributed Application Runtime (Dapr) erstellen und basierend auf HTTP-Datenverkehr oder anderen Ereignissen skalieren.

Wenn Sie die API-Verwaltung verwenden, um eine Web-API verfügbar zu machen, die in einer Container-App gehostet wird, erhalten Sie die folgenden Vorteile:

  • Entkoppeln Sie das Verwalten und Sichern des Frontends, das API-Verbrauchern zur Verfügung steht, von der Verwaltung und Überwachung der Backend-Web-API.
  • Verwalten Sie Web-APIs, die als Container-Apps in derselben Umgebung gehostet werden wie Ihre anderen APIs.
  • Wenden Sie Richtlinien an, um das API-Verhalten zu ändern, z. B. das Einschränken der Anrufrate.
  • Leiten Sie API-Verbraucher zu dem anpassbaren API-Verwaltungs-Entwicklerportal, damit sie Ihre APIs entdecken und erfahren, Zugriff anfordern und APIs ausprobieren können.

Weitere Informationen finden Sie unter Informationen zu API Management.

OpenAPI-Spezifikation im Vergleich zu Wildcardvorgängen

API-Verwaltung unterstützt das Importieren von Container-Apps, die eine OpenAPI-Spezifikation (eine Swagger-Definition) bereitstellen. Eine OpenAPI-Spezifikation ist nicht erforderlich, es wird jedoch empfohlen, eine Spezifikation bereitzustellen. Die API-Verwaltung kann einzelne Vorgänge importieren, mit denen Sie Konfigurationen für jeden Vorgang separat überprüfen, verwalten, sichern und aktualisieren können.

Wenn die Container-App eine OpenAPI-Spezifikation verfügbar macht, erstellt die API-Verwaltung API-Vorgänge, die der Definition direkt zugeordnet sind. Die API-Verwaltung sucht an mehreren Speicherorten nach einer OpenAPI-Spezifikation:

  • Konfiguration der Container-App
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Wenn keine OpenAPI-Spezifikation bereitgestellt wird, generiert API Management Platzhaltervorgänge für die allgemeinen HTTP-Verben (GET, PUT etc.). Sie können weiterhin die gleichen Features von API Management nutzen, Vorgänge werden jedoch nicht mit demselben Detailgrad definiert.

In beiden Fällen können Sie Operationen nach dem Import der API bearbeiten oder hinzufügen.

Beispiel

Ihre Back-End-Container-App unterstützt möglicherweise zwei GET-Vorgänge:

  • https://<app-service>.azurewebsites.net/customer/{id}
  • https://<app-service>.azurewebsites.net/customers

Sie importieren die Container-App in Ihren API-Verwaltungsdienst unter einem Pfad wie https://<api>.azure-api.net/store. Die folgende Tabelle zeigt die Vorgänge, die in API Management importiert werden, entweder mit oder ohne OpenAPI-Spezifikation:

type Importierte Vorgänge Beispielanforderungen
OpenAPI-Spezifikation GET /customer/{id}

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

GET https://<api>.azure-api.net/store/customers
Platzhalter GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://<api>.azure-api.net/store/customers

Der Platzhaltervorgang ermöglicht die gleichen Anforderungen an den Back-End-Dienst wie die Vorgänge in der OpenAPI-Spezifikation. Die von OpenAPI angegebenen Vorgänge können jedoch separat in API Management verwaltet werden.

Voraussetzungen

Importieren und Veröffentlichen einer Back-End-API

  1. Navigieren Sie im Azure-Portal zu Ihrem API-Verwaltungsdienst, und wählen Sie im linken Bereich APIs> aus.

  2. Wählen Sie unter "Aus Azure-Ressource erstellen" die Option "Container-App" aus:

    Screenshot: Kachel „Container-App“.

  3. Wählen Sie "Durchsuchen" aus, um eine Liste der Container-Apps in Ihrem Abonnement anzuzeigen.

  4. Wählen Sie eine Container-App aus. Wenn eine OpenAPI-Definition der ausgewählten Container-App zugeordnet ist, ruft die API-Verwaltung sie ab und importiert sie. Wenn keine OpenAPI-Definition gefunden wird, macht API Management die API verfügbar, indem Platzhaltervorgänge für allgemeine HTTP-Verben generiert werden.

  5. Fügen Sie ein API-URL-Suffix hinzu. Das Suffix ist ein Name, der die API in der API-Verwaltungsinstanz identifiziert. Sie muss in der API-Verwaltungsinstanz eindeutig sein.

  6. Ordnen Sie die API einem Produkt zu. Wählen Sie "Vollständig" aus, und wählen Sie dann im Produkt das Produkt aus. In diesem Fall wird das Unbegrenzte Produkt verwendet. Wenn die API veröffentlicht werden soll und Entwicklern zur Verfügung steht, müssen Sie sie einem Produkt hinzufügen.

    Hinweis

    Produkte sind Zuordnungen einer oder mehrerer APIs. Sie können viele verschiedene APIs einfügen, und sie Entwicklern über das Entwicklerportal zur Verfügung stellen. Entwickler müssen ein Produkt zunächst abonnieren, um Zugriff auf die API zu erhalten. Wenn sie abonnieren, erhalten sie einen Abonnementschlüssel, der für jede API in diesem Produkt geeignet ist. Wenn Sie die API Management-Instanz erstellt haben, sind Sie Administrator und haben standardmäßig alle Produkte abonniert.

    In einigen Preisstufen enthält eine API-Verwaltungsinstanz zwei Beispielprodukte, wenn Sie sie erstellen:

    • Anlasser
    • Unbegrenzt
  7. Geben Sie weitere API-Einstellungen ein. Sie können diese Werte festlegen, wenn Sie die API erstellen oder später auf der Registerkarte "Einstellungen " konfigurieren. Diese Einstellungen werden im Ersten API-Lernprogramm zum Importieren und Veröffentlichen erläutert.

  8. Klicken Sie auf Erstellen.

    Screenshot: Fenster „Aus Container-App erstellen“.

Testen der neuen API im Azure-Portal

Sie können Vorgänge direkt über das Azure-Portal aufrufen. Diese Methode ist eine bequeme Möglichkeit zum Anzeigen und Testen der Vorgänge einer API. Sie können die API auch im Entwicklerportal oder mit Ihren eigenen REST-Clienttools testen.

So testen Sie die API im Azure-Portal:

  1. Wählen Sie die API aus, die Sie im vorherigen Schritt erstellt haben.

  2. Wählen Sie die Registerkarte Testen aus.

  3. Wählen Sie einen Vorgang aus.

    Die Seite zeigt Felder für Abfrageparameter und Felder für die Header. Eine der Kopfzeilen ist Ocp-Apim-Subscription-Key. Dieser Header ist für den Abonnementschlüssel des Produkts, das der API zugeordnet ist. Wenn Sie die API-Verwaltungsinstanz erstellt haben, sind Sie Administrator, sodass der Schlüssel automatisch ausgefüllt wird.

  4. Wählen Sie Send (Senden) aus.

    Wenn die Anforderung erfolgreich ist, antwortet das Back-End mit 200 OK und einigen Daten.

Testen des Platzhaltervorgangs im Azure-Portal

Wenn Platzhaltervorgänge generiert werden, werden die Vorgänge möglicherweise nicht direkt der Back-End-API zugeordnet. Beispielsweise verwendet ein in API Management importierter GET-Platzhaltervorgang standardmäßig den Pfad /. Ihre Back-End-API unterstützt jedoch möglicherweise einen GET-Vorgang unter folgendem Pfad:

/api/TodoItems

So testen Sie den /api/TodoItems Pfad:

  1. Wählen Sie die api aus, die Sie erstellt haben, und wählen Sie dann den Vorgang aus.

  2. Wählen Sie die Registerkarte Testen aus.

  3. Aktualisieren Sie unter Vorlagenparameter den Wert neben dem Platzhalternamen (*). Geben Sie beispielsweise api/TodoItems ein. Dieser Wert wird an den Pfad / für den Wildcardvorgang angefügt.

    Screenshot der Schritte zum Testen des Wildcardvorgangs.

  4. Wählen Sie Send (Senden) aus.

Anfügen weiterer APIs

Sie können eine API aus APIs erstellen, die von verschiedenen Diensten verfügbar gemacht werden, einschließlich:

  • Eine OpenAPI-Spezifikation
  • SOAP-API
  • Eine GraphQL-API
  • Eine Web-App, die in Azure App Service gehostet wird
  • Azure-Funktionen
  • Azure Logic Apps
  • Azure Service Fabric

Hinweis

Wenn Sie eine API importieren, werden die Vorgänge an Ihre aktuelle API angefügt.

So fügen Sie eine API an eine vorhandene API an:

  1. Wechseln Sie im Azure-Portal zu Ihrer Azure-API-Verwaltungsinstanz:

    Screenshot der Seite

  2. Wählen Sie auf der Seite "Übersicht"APIs aus, oder wählen Sie im Menü auf der linken Seite APIs> aus.

    Screenshot der APIs-Auswahl auf der Seite

  3. Wählen Sie die Ellipse (...) neben der API aus, zu der Sie eine andere API hinzufügen möchten.

  4. Wählen Sie im Dropdownmenü " Importieren" aus:

    Screenshot des Befehls

  5. Wählen Sie einen Dienst aus, aus dem eine API importiert werden soll.