Dela via


Anropa REST API-slutpunkter från arbetsflöden i Azure Logic Apps

Gäller för: Azure Logic Apps (Förbrukning + Standard)

Om du vill anropa en REST API-slutpunkt från ett logikapparbetsflöde i Azure Logic Apps kan du använda de inbyggda HTTP + Swagger-åtgärderna för att anropa valfri REST API-slutpunkt via en Swagger-fil. HTTP + Swagger-utlösaren och åtgärden fungerar på samma sätt som HTTP-utlösaren och åtgärden, men ger en bättre upplevelse i arbetsflödesdesignern genom att exponera API-strukturen och utdata som beskrivs av Swagger-filen. Om du vill implementera en avsökningsutlösare följer du avsökningsmönstret som beskrivs i Skapa anpassade API:er för att anropa andra API:er, tjänster och system från logikapparbetsflöden.

Begränsningar

De inbyggda HTTP + Swagger-åtgärderna stöder för närvarande endast OpenAPI 2.0, inte OpenAPI 3.0.

Förutsättningar

  • Ett Azure-konto och prenumeration. Om du heller inte har någon Azure-prenumeration kan du registrera ett kostnadsfritt Azure-konto.

  • URL:en för Swagger-filen som beskriver mål-REST API-slutpunkten som du vill anropa

    Vanligtvis måste REST-slutpunkten uppfylla följande villkor för att utlösaren eller åtgärden ska fungera:

    • Swagger-filen måste finnas på en HTTPS-URL som är offentligt tillgänglig.

    • Swagger-filen måste innehålla en operationID-egenskap för varje åtgärd i definitionen. Annars visar anslutningsappen bara den sista åtgärden i Swagger-filen.

    • Swagger-filen måste ha CORS (Cross-Origin Resource Sharing) aktiverat.

    Kommentar

    Om du vill referera till en Swagger-fil som inte är värdbaserad eller som inte uppfyller kraven för säkerhet och korsande ursprung kan du ladda upp Swagger-filen till en blobcontainer i ett Azure-lagringskonto och aktivera CORS för det lagringskontot så att du kan referera till filen.

  • Arbetsflödet för förbruknings- eller standardlogikappen där du vill anropa målslutpunkten. Börja med HTTP + Swagger-utlösaren genom att skapa en logikappresurs med ett tomt arbetsflöde. Om du vill använda åtgärden HTTP + Swagger startar du arbetsflödet med valfri utlösare. I det här exemplet används HTTP + Swagger-utlösaren som den första åtgärden.

Lägga till en HTTP + Swagger-utlösare

Den här inbyggda utlösaren skickar en HTTP-begäran till en URL för en Swagger-fil som beskriver ett REST-API. Utlösaren returnerar sedan ett svar som innehåller filens innehåll.

  1. Öppna logikappresursen och det tomma arbetsflödet i designern i Azure Portal.

  2. Baserat på om du har ett förbruknings- eller standardarbetsflöde följer du dessa allmänna steg för att lägga till HTTP-utlösaren med namnet HTTP + Swagger.

  3. I rutan Swagger-slutpunkt anger du URL:en för den Swagger-fil som du vill använda och väljer Lägg till åtgärd.

    I följande exempel används en icke-funktionell Swagger-URL. Url:en kan använda ett annat format.

    Skärmbild som visar arbetsflödesdesignern med valt Lägg till utlösarform och informationsfönster för HTTP + Swagger-utlösare. Egenskapen Swagger-slutpunkt är inställd på en exempel-URL.

  4. När designern visar de åtgärder som beskrivs av Swagger-filen väljer du den åtgärd som du vill använda.

  5. Ange värdena för utlösarparametrarna, som varierar beroende på den valda åtgärden, som du vill inkludera i slutpunktsanropet.

  6. Om utlösaren kräver att du anger ett avfyrningsschema anger du upprepningen för hur ofta du vill att utlösaren ska anropa slutpunkten.

  7. Om du vill lägga till andra tillgängliga parametrar öppnar du listan Avancerade parametrar och väljer önskade parametrar.

    Mer information om autentiseringstyper som är tillgängliga för HTTP + Swagger finns i Lägga till autentisering i utgående anrop.

  8. Fortsätt att skapa arbetsflödet med de åtgärder som du vill köra när utlösaren utlöses.

  9. Spara arbetsflödet när du är klar. I verktygsfältet för designern väljer du Spara.

Lägga till en HTTP + Swagger-åtgärd

Den här inbyggda åtgärden skickar en HTTP-begäran till URL:en för Swagger-filen som beskriver ett REST-API. Åtgärden returnerar sedan ett svar som innehåller filens innehåll.

  1. Öppna logikappresursen och arbetsflödet i designern i Azure Portal.

  2. Baserat på om du har ett förbruknings- eller standardarbetsflöde följer du dessa allmänna steg för att lägga till HTTP-åtgärden med namnet HTTP + Swagger.

  3. I rutan Swagger-slutpunkt anger du URL:en för den Swagger-fil som du vill använda och väljer Lägg till åtgärd.

    I följande exempel används en icke-funktionell Swagger-URL. Url:en kan använda ett annat format.

    Skärmbild som visar arbetsflödesdesignern med utlösaren Fabrikam API – Skapa ordning och öppna informationsfönstret för ÅTGÄRDEN HTTP + Swagger. Egenskapen Swagger-slutpunkt är inställd på en URL.

  4. När designern visar de åtgärder som beskrivs av Swagger-filen väljer du den åtgärd som du vill använda.

  5. Ange värdena för åtgärdsparametrarna, som varierar beroende på den valda åtgärden, som du vill inkludera i slutpunktsanropet.

  6. Om du vill lägga till andra tillgängliga parametrar öppnar du listan Avancerade parametrar och väljer önskade parametrar.

    Mer information om autentiseringstyper som är tillgängliga för HTTP + Swagger finns i Lägga till autentisering i utgående anrop.

  7. Fortsätt att skapa arbetsflödet med andra åtgärder som du vill köra.

  8. Spara arbetsflödet när du är klar. I verktygsfältet för designern väljer du Spara.

Värdhantera Swagger i Azure Storage

Du kan fortfarande referera till en Swagger-fil som inte finns eller som inte uppfyller kraven för säkerhet och korsande ursprung. Ladda upp Swagger-filen till blobcontainern i ett Azure-lagringskonto och aktivera CORS på det lagringskontot. Följ dessa steg för att skapa, konfigurera och lagra Swagger-filer i Azure Storage:

  1. Skapa ett Azure Storage-konto.

  2. Aktivera nu CORS för bloben. På lagringskontots meny väljer du CORS. På fliken Blob-tjänst anger du dessa värden och väljer Spara.

    Property Värde
    Tillåtet ursprung *
    Tillåtna metoder GET, , HEADPUT
    Tillåtna rubriker *
    Synliga rubriker *
    Maxålder (i sekunder) 200

    Även om det här exemplet använder Azure Portal kan du använda ett verktyg som Azure Storage Explorer eller konfigurera den här inställningen automatiskt med hjälp av det här PowerShell-exempelskriptet.

  3. Skapa en blobcontainer. I containerns översiktsfönster väljer du Ändra åtkomstnivå. I listan Offentlig åtkomstnivå väljer du Blob (endast anonym läsåtkomst för blobar)och väljer OK.

  4. Ladda upp Swagger-filen till blobcontainern, antingen via Azure Portal eller Azure Storage Explorer.

  5. Om du vill referera till filen i blobcontainern hämtar du HTTPS-URL:en som följer det här formatet, som är skiftlägeskänsligt, från Azure Storage Explorer:

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

Teknisk referens för anslutningsprogram

Det här avsnittet innehåller mer information om utdata från en HTTP + Swagger-utlösare och åtgärd.

Utdata

HTTP + Swagger-anropet returnerar följande information:

Egenskapsnamn Type Beskrivning
Headers Objekt Rubrikerna från begäran
brödtext Objekt Objektet med brödtextinnehållet från begäran
statuskod Integer Statuskoden från begäran
Statuskod beskrivning
200 OK
202 Godkänd
400 Felaktig begäran
401 Behörighet saknas
403 Ej tillåtet
404 Hittades inte
500 Internt serverfel. Ett okänt fel uppstod.