Delen via


Een Azure-container-app als API importeren

Van toepassing op: Alle API Management-lagen

In dit artikel wordt beschreven hoe u een Azure-container-app als API Management importeert en de geïmporteerde API test met behulp van Azure Portal.

Notitie

Deze functie is momenteel niet beschikbaar in werkruimten.

In dit artikel leert u het volgende:

  • Een container-app importeren die een web-API beschikbaar maakt
  • De API testen in Azure Portal

Een container-app beschikbaar maken met BEHULP van API Management

Met Azure Container Apps kunt u container-apps implementeren zonder dat u complexe infrastructuur hoeft te beheren. API-ontwikkelaars kunnen code schrijven met hun favoriete programmeertaal of framework, microservices bouwen met volledige ondersteuning voor Distributed Application Runtime (Dapr) en schalen op basis van HTTP-verkeer of andere gebeurtenissen.

Door API Management te gebruiken om een web-API beschikbaar te maken die wordt gehost in een container-app, profiteert u van de volgende voordelen:

  • Ontkoppel het beheren en beveiligen van de front-end die beschikbaar is voor API-consumenten, van het beheren en bewaken van de back-endweb-API.
  • Web-API's beheren die worden gehost als container-apps in dezelfde omgeving als uw andere API's.
  • Pas beleidsregels toe om het API-gedrag te wijzigen, zoals het beperken van de aanroepsnelheid.
  • Directe API-gebruikers naar de aanpasbare API Management-ontwikkelaarsportal , zodat ze uw API's kunnen detecteren en leren, toegang kunnen aanvragen en API's kunnen proberen.

Zie Over API Management voor meer informatie.

OpenAPI-specificatie versus jokertekenbewerkingen

API Management biedt ondersteuning voor het importeren van container-apps die een OpenAPI-specificatie (een Swagger-definitie) bieden. Een OpenAPI-specificatie is niet vereist, maar u wordt aangeraden er een op te geven. API Management kan afzonderlijke bewerkingen importeren, waarmee u configuraties voor elke bewerking afzonderlijk kunt valideren, beheren, beveiligen en bijwerken.

Als de container-app een OpenAPI-specificatie beschikbaar maakt, maakt API Management bewerkingen aan die rechtstreeks aan de definitie worden toegewezen. API Management zoekt op verschillende locaties naar een OpenAPI-specificatie:

  • De configuratie van de container-app
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Als er geen OpenAPI-specificatie wordt opgegeven, genereert API Management jokertekenbewerkingen voor de algemene HTTP-woorden (GET, PUT, enzovoort). U kunt nog steeds profiteren van dezelfde API Management-functies, maar bewerkingen worden niet op hetzelfde detailniveau gedefinieerd.

In beide gevallen kunt u bewerkingen bewerken of toevoegen aan de API nadat u deze hebt geïmporteerd.

Voorbeeld

Uw back-endcontainer-app ondersteunt mogelijk twee GET-bewerkingen:

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

U importeert de container-app in uw API Management-service op een pad zoals https://<api>.azure-api.net/store. In de volgende tabel ziet u de bewerkingen die worden geïmporteerd in API Management, met of zonder een OpenAPI-specificatie:

Typologie Geïmporteerde bewerkingen Voorbeeldaanvragen
OpenAPI-specificatie GET /customer/{id}

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

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

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

Met de jokertekenbewerking worden dezelfde aanvragen naar de back-endservice toegestaan als de bewerkingen in de OpenAPI-specificatie. De openAPI-opgegeven bewerkingen kunnen echter afzonderlijk worden beheerd in API Management.

Vereiste voorwaarden

Een API importeren en publiceren

  1. Navigeer naar uw API Management-service in Azure Portal en selecteer API's> in het linkerdeelvenster.

  2. Selecteer container-app onder Maken vanuit Azure-resource:

    Schermopname die de tegel van de Container-app toont.

  3. Selecteer Bladeren om een lijst met container-apps in uw abonnement weer te geven.

  4. Selecteer een container-app. Als een OpenAPI-definitie is gekoppeld aan de geselecteerde container-app, haalt API Management deze op en importeert deze. Als er geen OpenAPI-definitie wordt gevonden, maakt API Management de API beschikbaar door jokertekenbewerkingen te genereren voor algemene HTTP-werkwoorden.

  5. Voeg een API-URL-achtervoegsel toe. Het achtervoegsel is een naam die de API in het API Management-exemplaar identificeert. Het moet uniek zijn in het API Management-exemplaar.

  6. Koppel de API aan een product. Selecteer Volledig en selecteer vervolgens in Product het product. In dit geval wordt het Onbeperkte product gebruikt. Als u wilt dat de API wordt gepubliceerd en beschikbaar is voor ontwikkelaars, moet u deze toevoegen aan een product.

    Notitie

    Producten zijn koppelingen van een of meer API's. U kunt vele API's opnemen en deze beschikbaar stellen voor ontwikkelaars via de ontwikkelaarsportal. Ontwikkelaars moeten zich eerst abonneren op een product om toegang tot de API te krijgen. Wanneer ze zich abonneren, krijgen ze een abonnementssleutel die geschikt is voor elke API in dat product. Als u het API Management-exemplaar hebt gemaakt, bent u een beheerder en bent u standaard geabonneerd op elk product.

    In sommige prijscategorieën wordt een API Management-exemplaar geleverd met twee voorbeeldproducten wanneer u deze maakt:

    • Starter
    • Onbeperkt
  7. Voer andere API-instellingen in. U kunt deze waarden instellen wanneer u de API maakt of deze later configureren op het tabblad Instellingen . Deze instellingen worden uitgelegd in de zelfstudie Importeren en publiceren van uw eerste API .

  8. Kies Maken.

    Schermopname van het venster Maken vanuit container-app.

De nieuwe API testen in de Azure-portal

U kunt bewerkingen rechtstreeks vanuit Azure Portal aanroepen. Deze methode is een handige manier om de bewerkingen van een API weer te geven en te testen. U kunt de API ook testen in de ontwikkelaarsportal of met behulp van uw eigen REST-clienthulpprogramma's.

De API testen in Azure Portal:

  1. Selecteer de API die u in de vorige stap hebt gemaakt.

  2. Selecteer het tabblad Testen.

  3. Selecteer een bewerking.

    De pagina geeft velden weer voor queryparameters en velden voor de headers. Een van de headers is Ocp-Apim-Subscription-Key. Deze header is voor de abonnementssleutel van het product dat is gekoppeld aan de API. Als u het API Management-exemplaar hebt gemaakt, bent u een beheerder, zodat de sleutel automatisch wordt ingevuld.

  4. Klik op Verzenden.

    Wanneer de test is geslaagd, reageert de back-end met 200 OK en enkele gegevens.

Bewerking met jokertekens testen in de portal

Wanneer jokertekenbewerkingen worden gegenereerd, worden de bewerkingen mogelijk niet rechtstreeks toegewezen aan de back-end-API. Een get-bewerking met jokertekens die in API Management wordt geïmporteerd, maakt bijvoorbeeld standaard gebruik van het pad / . Uw back-end-API ondersteunt echter mogelijk een GET-bewerking op het volgende pad:

/api/TodoItems

Om het pad /api/TodoItems te testen:

  1. Selecteer de API die u hebt gemaakt en selecteer vervolgens de bewerking.

  2. Selecteer het tabblad Testen.

  3. Werk in sjabloonparameters de waarde naast de naam met het jokerteken (*) bij. Voer bijvoorbeeld api/TodoItems in. Deze waarde wordt toegevoegd aan het pad / voor de jokertekenbewerking.

    Schermopname van de stappen voor het testen van jokertekenbewerkingen.

  4. Klik op Verzenden.

Andere API's toevoegen

U kunt een API samenstellen uit API's die worden weergegeven door verschillende services, waaronder:

  • Een OpenAPI-specificatie
  • Een SOAP-API
  • Een GraphQL-API
  • Een web-app die wordt gehost in Azure App Service
  • Azure Functions (serverloze computerdiensten van Azure)
  • Azure Logic Apps
  • Azure Service Fabric

Notitie

Wanneer u een API importeert, worden de bewerkingen toegevoegd aan uw huidige API.

Een API toevoegen aan een bestaande API:

  1. Ga naar uw Azure API Management-exemplaar in Azure Portal:

    Schermopname van de pagina API Management-services.

  2. Selecteer API's op de Overzicht pagina of selecteer API's>API's in het menu aan de linkerkant.

    Screenshot van de selectie van API's op de pagina 'Overzicht'.

  3. Selecteer het beletselteken (#A0 ... #A1) naast de API waaraan u een andere API wilt toevoegen.

  4. Selecteer Import uit het vervolgkeuzemenu.

    Schermopname van de opdracht importeren.

  5. Selecteer de service waaruit een API moet worden geïmporteerd.