REST API-eindpunten Verbinding maken of aanroepen vanuit werkstromen in Azure Logic Apps

Van toepassing op: Azure Logic Apps (Verbruik + Standard)

Als u een REST API-eindpunt wilt aanroepen vanuit een werkstroom voor logische apps in Azure Logic Apps, kunt u de ingebouwde HTTP + Swagger-bewerkingen gebruiken om een REST API-eindpunt aan te roepen via een Swagger-bestand. De HTTP + Swagger-trigger en -actie werken hetzelfde als de HTTP-trigger en -actie , maar bieden een betere ervaring in de werkstroomontwerper door de API-structuur en uitvoer weer te geven die worden beschreven door het Swagger-bestand. Als u een polling-trigger wilt implementeren, volgt u het polling-patroon dat wordt beschreven in Aangepaste API's maken om andere API's, services en systemen aan te roepen vanuit werkstromen voor logische apps.

Beperkingen

De ingebouwde HTTP + Swagger-bewerkingen ondersteunen momenteel alleen OpenAPI 2.0, niet OpenAPI 3.0.

Vereisten

  • Een account en Een Azure-abonnement. Als u nog geen abonnement op Azure hebt, registreer u dan nu voor een gratis Azure-account.

  • De URL voor het Swagger-bestand dat het doel-REST API-eindpunt beschrijft dat u wilt aanroepen

    Normaal gesproken moet het REST-eindpunt voldoen aan de volgende criteria om de trigger of actie te laten werken:

    • Het Swagger-bestand moet worden gehost op een HTTPS-URL die openbaar toegankelijk is.

    • Het Swagger-bestand moet een operationID-eigenschap bevatten voor elke bewerking in de definitie. Als dat niet het probleem is, geeft de connector alleen de laatste bewerking weer in het Swagger-bestand.

    • Voor het Swagger-bestand moet CORS (Cross-Origin Resource Sharing) zijn ingeschakeld.

    In de voorbeelden in deze handleiding wordt Gebruikgemaakt van Azure AI Face, waarvoor een Resourcesleutel en regio van Azure AI-services is vereist.

    Notitie

    Als u wilt verwijzen naar een Swagger-bestand dat niet wordt gehost of die niet voldoet aan de vereisten voor beveiliging en cross-origin, kunt u het Swagger-bestand uploaden naar een blobcontainer in een Azure-opslagaccount en CORS inschakelen voor dat opslagaccount, zodat u naar het bestand kunt verwijzen.

  • De werkstroom Verbruik of Standaard logische app van waaruit u het doeleindpunt wilt aanroepen. Als u wilt beginnen met de HTTP + Swagger-trigger , maakt u een logische app-resource met een lege werkstroom. Als u de ACTIE HTTP + Swagger wilt gebruiken, start u uw werkstroom met een gewenste trigger. In dit voorbeeld wordt de HTTP + Swagger-trigger gebruikt als de eerste bewerking.

Een HTTP + Swagger-trigger toevoegen

Deze ingebouwde trigger verzendt een HTTP-aanvraag naar een URL voor een Swagger-bestand dat een REST API beschrijft. De trigger retourneert vervolgens een antwoord dat de inhoud van dat bestand bevat.

  1. Open in Azure Portal de resource van uw standaard logische app en een lege werkstroom in de ontwerpfunctie.

  2. Volg deze algemene stappen in de ontwerpfunctie om de HTTP-trigger met de naam HTTP + Swagger toe te voegen.

  3. Voer in het vak Swagger-eindpunt de URL in voor het gewenste Swagger-bestand en selecteer Actie toevoegen.

    Zorg ervoor dat u uw eigen eindpunt gebruikt of maakt. Als voorbeeld gebruiken deze stappen alleen de volgende Azure AI Face API Swagger-URL in de regio VS - west en werken mogelijk niet in uw specifieke trigger:

    https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0

    Screenshot shows Standard workflow designer with trigger named httpswaggeraction. The Swagger Endpoint property is set to a URL value.

  4. Wanneer de ontwerpfunctie de bewerkingen weergeeft die door het Swagger-bestand worden beschreven, selecteert u de bewerking die u wilt gebruiken.

    In het volgende voorbeeld wordt de naam van de trigger gewijzigd in Face - Detecteren , zodat de trigger een meer beschrijvende naam heeft.

    Screenshot shows Standard workflow, Face - Detect trigger, and list with Swagger operations.

  5. Geef de waarden op voor de triggerparameters, die variëren op basis van de geselecteerde bewerking die u wilt opnemen in de eindpuntoproep. Stel het terugkeerpatroon in voor hoe vaak u wilt dat de trigger het eindpunt aanroept.

  6. Als u andere beschikbare parameters wilt toevoegen, opent u de lijst geavanceerde parameters en selecteert u de gewenste parameters.

    Zie Verificatie toevoegen aan uitgaande aanroepen voor meer informatie over verificatietypen die beschikbaar zijn voor HTTP + Swagger.

  7. Ga door met het bouwen van uw werkstroom met de acties die u wilt uitvoeren wanneer de trigger wordt geactiveerd.

  8. Sla uw werkstroom op als u gereed bent. Selecteer in de werkbalk van de ontwerper Opslaan.

Een HTTP + Swagger-actie toevoegen

Met deze ingebouwde actie wordt een HTTP-aanvraag verzonden naar de URL voor het Swagger-bestand dat een REST API beschrijft. De actie retourneert vervolgens een antwoord dat de inhoud van dat bestand bevat.

  1. Open in Azure Portal de resource en werkstroom van uw standaard logische app in de ontwerpfunctie.

  2. Volg deze algemene stappen in de ontwerpfunctie om de HTTP-actie HTTP + Swagger toe te voegen.

  3. Voer in het vak Swagger-eindpunt de URL in voor het gewenste Swagger-bestand en selecteer Actie toevoegen.

    Zorg ervoor dat u uw eigen eindpunt gebruikt of maakt. Als voorbeeld gebruiken deze stappen alleen de volgende Azure AI Face API Swagger-URL in de regio VS - west en werken mogelijk niet in uw specifieke trigger:

    https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0

    Screenshot shows Standard workflow designer with trigger named Face - Detect, and action named httpswaggeraction. The Swagger Endpoint property is set to a URL value.

  4. Wanneer de ontwerpfunctie de bewerkingen weergeeft die door het Swagger-bestand worden beschreven, selecteert u de bewerking die u wilt gebruiken.

    In het volgende voorbeeld wordt de naam van de actie gewijzigd in Gezicht: identificeren , zodat de actie een meer beschrijvende naam heeft.

    Screenshot shows Standard workflow, Face - Identify action, and list with Swagger operations.

  5. Geef de waarden op voor de actieparameters, die variëren op basis van de geselecteerde bewerking die u wilt opnemen in de eindpuntoproep.

  6. Als u andere beschikbare parameters wilt toevoegen, opent u de lijst geavanceerde parameters en selecteert u de gewenste parameters.

    Zie Verificatie toevoegen aan uitgaande aanroepen voor meer informatie over verificatietypen die beschikbaar zijn voor HTTP + Swagger.

  7. Ga door met het bouwen van uw werkstroom met andere acties die u wilt uitvoeren.

  8. Sla uw werkstroom op als u gereed bent. Selecteer in de werkbalk van de ontwerper Opslaan.

Swagger hosten in Azure Storage

U kunt nog steeds verwijzen naar een Swagger-bestand dat niet wordt gehost of die niet voldoet aan de vereisten voor beveiliging en cross-origin. Upload het Swagger-bestand naar een blobcontainer in een Azure-opslagaccount en schakel CORS in voor dat opslagaccount. Voer de volgende stappen uit om Swagger-bestanden te maken, in te stellen en op te slaan in Azure Storage:

  1. Maak een Azure-opslagaccount.

  2. Schakel NU CORS in voor de blob. Selecteer CORS in het menu van uw opslagaccount. Geef op het tabblad Blob Service deze waarden op en selecteer Opslaan.

    Eigenschappen Weergegeven als
    Toegestane oorsprongen *
    Toegestane methoden GET, , HEADPUT
    Toegestane headers *
    Weergegeven headers *
    Maximale leeftijd (in seconden) 200

    Hoewel in dit voorbeeld de Azure-portal wordt gebruikt, kunt u een hulpprogramma zoals Azure Storage Explorer gebruiken of deze instelling automatisch configureren met behulp van dit PowerShell-voorbeeldscript.

  3. Maak een blobcontainer. Selecteer in het deelvenster Overzicht van de container de optie Toegangsniveau wijzigen. Selecteer in de lijst met openbare toegangsniveausblob (alleen anonieme leestoegang voor blobs) en selecteer OK.

  4. Upload het Swagger-bestand naar de blobcontainer, via Azure Portal of Azure Storage Explorer.

  5. Als u wilt verwijzen naar het bestand in de blobcontainer, haalt u de HTTPS-URL op die volgt op deze indeling, wat hoofdlettergevoelig is, vanuit Azure Storage Explorer:

    https://<storage-account-name>.blob.core.windows.net/<blob-container-name>/<complete-swagger-file-name>?<query-parameters>

Verbinding maken of technische naslaginformatie

Deze sectie bevat meer informatie over de uitvoer van een HTTP + Swagger-trigger en -actie.

Uitvoer

De HTTP + Swagger-aanroep retourneert de volgende informatie:

Eigenschapsnaam Type Description
Headers Object De headers van de aanvraag
hoofdtekst Object Het object met de hoofdtekstinhoud van de aanvraag
statuscode Geheel getal De statuscode van de aanvraag
Statuscode Beschrijving
200 OK
202 Geaccepteerd
400 Ongeldige aanvraag
401 Niet geautoriseerd
403 Verboden
404 Niet gevonden
500 Interne serverfout. Er is een onbekende fout opgetreden.

Volgende stappen