Teilen über


Importieren einer Azure Web App als API

GILT FÜR: Alle API Management-Ebenen

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

Hinweis

Dieses Feature ist derzeit in Arbeitsbereichen nicht verfügbar.

In diesem Artikel werden folgende Vorgehensweisen behandelt:

  • Importieren einer Web-App, die in Azure App Service gehostet wird, als API
  • Testen der API im Azure-Portal

Verfügbarmachen einer Web-App mithilfe der API-Verwaltung

Azure App Service ist ein HTTP-basierter Dienst zum Hosten von Webanwendungen, REST-APIs und mobilen Back-Ends. API-Entwickler können ihre bevorzugten Technologiestapel und Pipelines verwenden, um APIs zu entwickeln und ihre API-Back-Ends als Web-Apps in einer sicheren, skalierbaren Umgebung zu veröffentlichen. Anschließend können sie die API-Verwaltung verwenden, um die Web-Apps verfügbar zu machen, die APIs während des gesamten Lebenszyklus zu verwalten und zu schützen und sie für Verbraucher zu veröffentlichen.

Die Verwendung der API-Verwaltung zum Verfügbarmachen einer von Web Apps gehosteten API bietet folgende Vorteile:

  • Entkoppeln Sie das Verwalten und Sichern des Front-Ends, das API-Verbrauchern ausgesetzt ist, vom Verwalten und Überwachen der Backend-Webanwendung.
  • Verwalten Sie Web-APIs, die als Web-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-Definition im Vergleich zu Wildcardvorgängen

DIE API-Verwaltung unterstützt den Import von Web-Apps, die in App Service gehostet werden, die eine OpenAPI-Definition (eine Swagger-Definition) enthalten. Eine OpenAPI-Definition ist jedoch nicht erforderlich.

  • Wenn die Web-App mit einer OpenAPI-Definition konfiguriert ist, erkennt die API-Verwaltung dies. Alternativ können Sie die Definition manuell in API Management importieren. API Management erstellt dann API-Vorgänge, die direkt der Definition entsprechen, einschließlich erforderlicher Pfade, Parameter und Antworttypen.

    Die Verwendung einer OpenAPI-Definition wird empfohlen, da die API in die API-Verwaltung mit hoher Genauigkeit importiert wird und Ihnen die Flexibilität bietet, Konfigurationen für jeden Vorgang separat zu überprüfen, zu verwalten, zu schützen und zu aktualisieren.

  • Wenn keine OpenAPI-Definition bereitgestellt wird, generiert API Management Platzhaltervorgänge für die allgemeinen HTTP-Verben (GET, PUT usw.). Fügen Sie einen erforderlichen Pfad oder Parameter an einen Platzhaltervorgang an, um eine API-Anforderung an die Back-End-API zu übergeben.

    Bei Platzhaltervorgängen können Sie weiterhin die gleichen Features von API Management nutzen; Vorgänge werden jedoch standardmäßig nicht auf derselben Detailebene definiert. In beiden Fällen können Sie Vorgänge bearbeiten oder der importierten API hinzufügen.

Beispiel

Ihre Back-End-Web-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 Web-App in Ihren API-Verwaltungsdienst unter einem Pfad wie https://<api>.azureapi.net/store. Die folgende Tabelle zeigt die Vorgänge, die in die API-Verwaltung importiert werden, mit oder ohne OpenAPI-Spezifikation:

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

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

GET https://<api>.azureapi.net/store/customers
Platzhalter GET /* GET https://<api>.azureapi.net/store/customer/1

GET https://<api>.azureapi.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

Tipp

In den folgenden Schritten starten Sie den Import mithilfe der API-Verwaltung im Azure-Portal. Sie können auch direkt über Ihre Web-App eine Verknüpfung mit der API-Verwaltung herstellen, indem Sie im API-Menü der App die API-Verwaltung auswählen.

  1. Navigieren Sie zu Ihrem API Management-Dienst im Azure-Portal.

  2. Wählen Sie im linken Menü im Abschnitt APIsAPIs aus, und wählen Sie dann + API hinzufügen aus.

  3. Wählen Sie die Kachel "App Service " aus:

    Screenshot, der die Kachel „App Service“ zeigt.

  4. Wählen Sie "Durchsuchen" aus, um die Liste der App-Dienste in Ihrem Abonnement anzuzeigen.

  5. Wählen Sie einen App-Dienst aus, und klicken Sie dann auf die Schaltfläche "Auswählen ". Wenn eine OpenAPI-Definition der ausgewählten Web-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.

  6. 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.

  7. Wenn die API veröffentlicht und für Entwickler verfügbar sein soll, wechseln Sie zur Vollständigen Ansicht, und ordnen Sie die API einem Produkt zu. In diesem Beispiel wird das Unbegrenzte Produkt verwendet. (Sie können Ihre API zu einem Produkt hinzufügen, wenn Sie es erstellen oder später über die Registerkarte Einstellungen.)

    Hinweis

    Produkte sind Zuordnungen einer oder mehrerer APIs, die Entwicklern über das Entwicklerportal angeboten werden. Entwickler müssen zunächst ein Produkt abonnieren, um Zugriff auf die API zu erhalten. Nachdem sie abonniert haben, erhalten sie einen Abonnementschlüssel für jede API im Produkt. Als Ersteller der API-Verwaltungsinstanz sind Sie Administrator und werden standardmäßig für jedes Produkt abonniert.

    In bestimmten Ebenen enthält jede API-Verwaltungsinstanz zwei Standardbeispielprodukte:

    • Starter
    • Unbegrenzt
  8. Geben Sie weitere API-Einstellungen ein. Sie können diese Werte festlegen, wenn Sie die API erstellen oder sie später konfigurieren, indem Sie zur Registerkarte "Einstellungen " wechseln. Die Einstellungen werden im Ersten API-Lernprogramm zum Importieren und Veröffentlichen erläutert.

  9. Klicken Sie auf Erstellen. Screenshot des Fensters

Testen der neuen API im Azure-Portal

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

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

  2. Wählen Sie auf der Registerkarte "Test " 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 bereits Administrator, sodass der Schlüssel automatisch ausgefüllt wird.

  3. Klicken Sie auf Senden.

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

Testen eines 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 im Pfad /api/todoItems.

So testen Sie den Pfad /api/todoItems:

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

  2. Aktualisieren Sie auf der Registerkarte " Test " unter " Vorlagenparameter" den Wert neben dem Platzhalternamen (*). Geben Sie beispielsweise "api/todoItems" ein. Dieser Wert wird an den Pfad / für den Platzhaltervorgang angefügt.

    Screenshot der Schritte zum Testen eines Vorgangs.

  3. Wählen Sie Senden aus.

Anfügen weiterer APIs

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

  • Einer OpenAPI-Spezifikation
  • Einer SOAP-API
  • Einer 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.