Ansluta till en FTP-server från arbetsflöden i Azure Logic Apps
Gäller för: Azure Logic Apps (Förbrukning + Standard)
Den här artikeln visar hur du kommer åt FTP-servern (File Transfer Protocol) från ett arbetsflöde i Azure Logic Apps med FTP-anslutningsappen. Du kan sedan skapa automatiserade arbetsflöden som körs när de utlöses av händelser på FTP-servern eller i andra system och köra åtgärder för att hantera filer på FTP-servern.
Arbetsflödet kan till exempel börja med en FTP-utlösare som övervakar och svarar på händelser på FTP-servern. Utlösaren gör utdata tillgängliga för efterföljande åtgärder i arbetsflödet. Arbetsflödet kan köra FTP-åtgärder som skapar, skickar, tar emot och hanterar filer via ditt FTP-serverkonto med hjälp av följande specifika uppgifter:
- Övervaka när filer läggs till eller ändras.
- Skapa, kopiera, ta bort, lista och uppdatera filer.
- Hämta filmetadata och innehåll.
- Hantera mappar.
Om du inte har använt Azure Logic Apps tidigare läser du följande kom igång-dokumentation:
Teknisk referens för anslutningsprogram
FTP-anslutningsappen har olika versioner, baserat på logikapptyp och värdmiljö.
Typ av logikapp (plan) | Environment | Anslutningsversion |
---|---|---|
Förbrukning | Azure Logic Apps med flera klientorganisationer | Hanterad anslutningsapp, som visas i anslutningsgalleriet under Runtime>Shared. Mer information finns i följande dokumentation: - Referens för FTP-hanterad anslutningsapp - Hanterade anslutningsappar i Azure Logic Apps |
Standard | Azure Logic Apps för en klientorganisation och App Service-miljön v3 (endast Windows-abonnemang) | Hanterad anslutningsapp (Azure-värdbaserad), som visas i anslutningsgalleriet under Runtime>Shared och inbyggd anslutningsapp, som visas i anslutningsgalleriet under Runtime>In App och är tjänstleverantörsbaserad. Den inbyggda anslutningsappen har direkt åtkomst till virtuella Azure-nätverk med en anslutningssträng. Mer information finns i följande dokumentation: - Referens för FTP-hanterad anslutningsapp - Avsnittet ftp-inbyggda anslutningsåtgärder senare i den här artikeln - Hanterade anslutningsappar i Azure Logic Apps - Inbyggda anslutningsappar i Azure Logic Apps |
Begränsningar
Kapacitet och dataflöde
Inbyggd anslutningsapp för Standard-arbetsflöden:
Som standard kan FTP-åtgärder läsa eller skriva filer som är 200 MB eller mindre. För närvarande stöder inte den inbyggda FTP-anslutningsappen segmentering.
Hanterad eller Azure-värdbaserad anslutningsapp för förbruknings- och standardarbetsflöden
Som standard kan FTP-åtgärder läsa eller skriva filer som är 50 MB eller mindre. För att hantera filer som är större än 50 MB stöder FTP-åtgärder segmentering av meddelanden. Åtgärden Hämta filinnehåll använder implicit segmentering.
Utlösare för FTP-hanterad eller Azure-värdbaserad anslutning kan uppleva saknade, ofullständiga eller fördröjda resultat när tidsstämpeln "senast ändrad" bevaras. Å andra sidan har den inbyggda FTP-anslutningsutlösaren i Standard Logic App-arbetsflöden inte den här begränsningen. Mer information finns i avsnittet Begränsningar för FTP-anslutningsappen.
Den FTP-hanterade eller Azure-värdbaserade anslutningsappen kan skapa ett begränsat antal anslutningar till FTP-servern, baserat på anslutningskapaciteten i Azure-regionen där logikappresursen finns. Om den här gränsen utgör ett problem i ett arbetsflöde för förbrukningslogikappen kan du överväga att skapa ett standardarbetsflöde för logikappar och använda den inbyggda FTP-anslutningsappen i stället.
Förutsättningar
Ett Azure-konto och prenumeration. Om du heller inte har någon Azure-prenumeration kan du registrera ett kostnadsfritt Azure-konto.
Arbetsflödet för logikappen där du vill komma åt ditt FTP-konto. Om du vill starta arbetsflödet med en FTP-utlösare måste du börja med ett tomt arbetsflöde. Om du vill använda en FTP-åtgärd startar du arbetsflödet med en annan utlösare, till exempel upprepningsutlösaren.
Fler krav som gäller för både FTP-hanterad anslutningsapp och inbyggd anslutningsapp finns i referensen för FTP-hanterad anslutningsapp – Krav.
Kända problem
Som standard har utlösare som returnerar en matris inställningen Dela på som redan är aktiverad. Med den här inställningen aktiverad diskuterar utlösaren automatiskt matrisen genom att internt skapa en separat arbetsflödesinstans för att bearbeta varje matrisobjekt. Alla arbetsflödesinstanser körs parallellt så att matrisobjekten bearbetas samtidigt.
Men när inställningen Dela på är aktiverad returnerar utlösare för hanterad anslutningsapp utdata för alla matrisobjekt som listor. Alla efterföljande åtgärder som refererar till dessa utdata måste först hantera dessa utdata som listor. Om du vill hantera varje matrisobjekt individuellt kan du lägga till extra åtgärder. Om du till exempel vill iterera genom dessa matrisobjekt kan du använda en För varje loop. För utlösare som endast returnerar metadata eller egenskaper använder du en åtgärd som hämtar matrisobjektets metadata först och sedan använder en åtgärd för att hämta objektinnehållet.
Du måste endast använda den här metoden för utlösare för hanterade anslutningsappar, inte inbyggda anslutningsutlösare som returnerar utdata för ett matrisobjekt i taget när inställningen Dela på är aktiverad.
Anta till exempel att du har en utlösare för hanterad anslutningsapp med namnet När en fil läggs till eller ändras (endast egenskaper) som returnerar metadata eller egenskaper för de nya eller uppdaterade filerna som matriser. Om du vill hämta metadata separat för varje fil kan du använda en För varje loop som itererar genom matrisen. I den här loopen använder du följande åtgärder för hanterade anslutningsappar i den angivna ordningen:
Hämta filmetadata för att hämta varje fils metadata.
Hämta filinnehållsåtgärden för att hämta varje fils innehåll.
Lägga till en FTP-utlösare
Ett arbetsflöde för förbrukningslogikappen kan endast använda den FTP-hanterade anslutningsappen. Ett standardarbetsflöde för logikappar kan dock använda den FTP-hanterade anslutningsappen och den inbyggda FTP-anslutningsappen. I ett standardarbetsflöde för logikappar är hanterade anslutningsappar också märkta som Azure-anslutningsappar .
Den FTP-hanterade anslutningsappen och den inbyggda anslutningsappen har bara en tillgänglig utlösare:
Utlösare för hanterad anslutningsapp: FTP-utlösaren med namnet När en fil läggs till eller ändras (endast egenskaper) kör ett arbetsflöde för förbrukning eller standardlogikapp när en eller flera filer läggs till eller ändras i en mapp på FTP-servern. Den här utlösaren hämtar endast filegenskaperna eller metadata, inte filinnehållet. Men för att hämta filinnehållet kan arbetsflödet följa den här utlösaren med andra FTP-åtgärder.
Mer information om den här utlösaren finns i När en fil läggs till eller ändras (endast egenskaper).
Inbyggd anslutningsutlösare: FTP-utlösaren med namnet När en fil läggs till eller uppdateras kör ett standardarbetsflöde för logikappar när en eller flera filer läggs till eller ändras i en mapp på FTP-servern. Den här utlösaren hämtar endast filegenskaperna eller metadata, inte filinnehållet. Men för att hämta innehållet kan arbetsflödet följa den här utlösaren med andra FTP-åtgärder. Mer information om den här utlösaren finns i När en fil läggs till eller uppdateras.
Följande steg använder Azure Portal, men med lämpligt Azure Logic Apps-tillägg kan du också använda följande verktyg för att skapa och redigera arbetsflöden för logikappar:
Arbetsflöden för förbrukningslogikapp: Visual Studio Code
Arbetsflöden för standardlogikapp: Visual Studio Code
Öppna arbetsflödet för den tomma logikappen i designern i Azure Portal.
I designern går du till sökrutan och väljer Standard. I sökrutan anger du ftp.
I listan utlösare väljer du utlösaren med namnet När en fil läggs till eller ändras (endast egenskaper)..
Ange information för anslutningen. Välj Skapa när du är klar.
Kommentar
Som standard överför den här anslutningsappen filer i textformat. Om du vill överföra filer i binärt format, till exempel var och när kodning används, väljer du alternativet binär transport.
När informationsrutan för utlösaren visas letar du reda på den mapp som du vill övervaka för nya eller redigerade filer.
I rutan Mapp väljer du mappikonen för att visa mappkatalogen.
Välj höger vinkelpil (>). Bläddra till den mapp som du vill använda och välj sedan mappen.
Den valda mappen visas i rutan Mapp .
Spara arbetsflödet när du är klar.
När du sparar arbetsflödet publicerar det här steget automatiskt dina uppdateringar till din distribuerade logikapp, som finns i Azure. Med bara en utlösare kontrollerar arbetsflödet bara FTP-servern baserat på ditt angivna schema. Du måste lägga till en åtgärd som svarar på utlösaren och gör något med utlösarens utdata.
Lägga till en FTP-åtgärd
Ett arbetsflöde för förbrukningslogikappen kan endast använda den FTP-hanterade anslutningsappen. Ett standardarbetsflöde för logikappar kan dock använda den FTP-hanterade anslutningsappen och den inbyggda FTP-anslutningsappen. Varje version har flera åtgärder. Till exempel har både hanterade och inbyggda anslutningsversioner sina egna åtgärder för att hämta filmetadata och hämta filinnehåll.
Åtgärder för hanterade anslutningsappar: Dessa åtgärder körs i ett arbetsflöde för förbrukning eller standardlogikapp.
Inbyggda anslutningsåtgärder: Dessa åtgärder körs endast i ett standardarbetsflöde för logikappar.
Följande steg använder Azure Portal, men med rätt Azure Logic Apps-tillägg kan du också använda följande verktyg för att skapa arbetsflöden för logikappar:
- Förbrukningsarbetsflöden: Visual Studio Code
- Standardarbetsflöden: Visual Studio Code
Innan du kan använda en FTP-åtgärd måste arbetsflödet redan börja med en utlösare, vilket kan vara vilken typ du vill. Du kan till exempel använda den inbyggda utlösaren för allmän upprepning för att starta arbetsflödet enligt ett visst schema.
Öppna arbetsflödet för logikappen i designern i Azure Portal.
Leta upp och välj den FTP-åtgärd som du vill använda.
Det här exemplet fortsätter med åtgärden Hämta filmetadata så att du kan hämta metadata för ett enda matrisobjekt.
Välj Nytt steg under utlösaren eller andra åtgärder i designern.
Under sökrutan Välj en åtgärd väljer du Standard.
I sökrutan anger du ftp get-filmetadata.
I åtgärdslistan väljer du åtgärden Med namnet Hämta filmetadata.
Om det behövs anger du informationen för anslutningen. Välj Skapa när du är klar.
Kommentar
Som standard överför den här anslutningsappen filer i textformat. Om du vill överföra filer i binärt format, till exempel var och när kodning används, väljer du alternativet binär transport.
När åtgärdsrutan Hämta metadata visas klickar du i rutan Arkiv så att listan med dynamiskt innehåll öppnas.
Nu kan du välja utdata från föregående utlösare.
I listan med dynamiskt innehåll går du till När en fil läggs till eller ändras väljer du Lista över fil-ID.
Egenskapen Arkiv refererar nu till utdata för utdata för list av fil-ID-utlösare .
I designern går du till åtgärden Hämta filmetadata och väljer Nytt steg.
Under sökrutan Välj en åtgärd väljer du Standard.
I sökrutan anger du ftp get-filinnehåll.
I åtgärdslistan väljer du åtgärden Med namnet Hämta filinnehåll.
När rutan Hämta information om filinnehållsåtgärden visas klickar du i rutan Arkiv så att listan med dynamiskt innehåll öppnas.
Nu kan du välja utdata från föregående utlösare och andra åtgärder.
I listan med dynamiskt innehåll går du till Hämta filmetadata och väljer ID, som refererar till filen som lades till eller uppdaterades.
Egenskapen Arkiv refererar nu till ID-åtgärdsutdata .
Spara arbetsflödet när du är klar. I verktygsfältet för designern väljer du Spara.
Testa arbetsflödet
Om du vill kontrollera att arbetsflödet returnerar det innehåll som du förväntar dig lägger du till en annan åtgärd som skickar dig innehållet från den tillagda eller uppdaterade filen. I det här exemplet används office 365 Outlook-åtgärden med namnet Skicka ett e-postmeddelande.
Under åtgärden Hämta filinnehåll lägger du till Office 365 Outlook-åtgärden med namnet Skicka ett e-postmeddelande. Om du har ett Outlook.com konto i stället lägger du till åtgärden Outlook.com Skicka ett e-postmeddelande och justerar följande steg i enlighet med detta.
I designern går du till åtgärden Hämta filinnehåll och väljer Nytt steg.
Under sökrutan Välj en åtgärd väljer du Standard.
I sökrutan anger du Office 365 Outlook skicka ett e-postmeddelande. I åtgärdslistan väljer du åtgärden Office 365 Outlook med namnet Skicka ett e-postmeddelande.
Om det behövs loggar du in på ditt e-postkonto.
I åtgärdsinformationsrutan anger du de värden som krävs och inkluderar alla andra parametrar eller egenskaper som du vill testa.
Du kan till exempel inkludera filinnehållsutdata från åtgärden Hämta filinnehåll . Följ dessa steg för att hitta dessa utdata:
I åtgärden Hämta filinnehåll klickar du i rutan Brödtext så att listan med dynamiskt innehåll öppnas.
I listan med dynamiskt innehåll bredvid Hämta filinnehåll väljer du Visa mer.
I listan med dynamiskt innehåll går du till Hämta filinnehåll och väljer Filinnehåll.
Egenskapen Body refererar nu till utdata för åtgärden Filinnehåll .
Spara arbetsflödet för logikappen.
Om du vill köra och utlösa arbetsflödet går du till verktygsfältet designer och väljer Kör utlösarkörning>. Lägg till en fil i FTP-mappen som arbetsflödet övervakar.
FTP-inbyggda anslutningsåtgärder
Den inbyggda FTP-anslutningsappen är endast tillgänglig för standardarbetsflöden för logikappar och tillhandahåller följande åtgärder:
Utlösare | beskrivning |
---|---|
När en fil läggs till eller uppdateras | Starta ett logikapparbetsflöde när en fil läggs till eller uppdateras i den angivna mappen på FTP-servern. Obs! Den här utlösaren hämtar endast filmetadata eller egenskaper, inte filinnehållet. Men för att hämta innehållet kan arbetsflödet följa den här utlösaren med åtgärden Hämta filinnehåll . |
Åtgärd | beskrivning |
---|---|
Skapa fil | Skapa en fil med den angivna filsökvägen och filinnehållet. |
Ta bort fil | Ta bort en fil med den angivna filsökvägen. |
Hämta filinnehåll | Hämta innehållet i en fil med den angivna filsökvägen. |
Hämta metadata för filen | Hämta metadata eller egenskaper för en fil med den angivna filsökvägen. |
Visa en lista över filer och undermappar i en mapp | Hämta en lista över filer och undermappar i den angivna mappen. |
Uppdatera fil | Uppdatera en fil med den angivna filsökvägen och filinnehållet. |
När en fil läggs till eller uppdateras
Åtgärds-ID: whenFtpFilesAreAddedOrModified
Den här utlösaren startar en arbetsflödeskörning för logikappen när en fil läggs till eller uppdateras i den angivna mappen på FTP-servern. Utlösaren hämtar endast filmetadata eller egenskaper, inte något filinnehåll. Men för att hämta innehållet kan arbetsflödet följa den här utlösaren med åtgärden Hämta filinnehåll .
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Mappsökväg | folderPath |
Sant | string |
Mappsökvägen i förhållande till rotkatalogen. |
Antal filer som ska returneras | maxFileCount |
Falsk | integer |
Det maximala antalet filer som ska returneras från en enda utlösarkörning. Giltiga värden sträcker sig från 1 till 100. Obs! Som standard är inställningen Dela på aktiverad och tvingar utlösaren att bearbeta varje fil separat parallellt. |
Tidsstämpel för stopp för att ignorera äldre filer | oldFileCutOffTimestamp |
Falsk | dateTime |
Den bryttid som ska användas för att ignorera äldre filer. Använd tidsstämpelformatet YYYY-MM-DDTHH:MM:SS . Om du vill inaktivera den här funktionen lämnar du den här egenskapen tom. |
Returer
När utlösarens delningsinställning är aktiverad returnerar utlösaren metadata eller egenskaper för en fil i taget. Annars returnerar utlösaren en matris som innehåller varje fils metadata.
Namn | Type |
---|---|
Lista över filer | BlobMetadata |
Skapa fil
Åtgärds-ID: createFile
Den här åtgärden skapar en fil med den angivna filsökvägen och filinnehållet. Om filen redan finns skriver den här åtgärden över filen.
Viktigt!
Om du tar bort eller byter namn på en fil på FTP-servern omedelbart efter att du har skapat den i samma arbetsflöde kan åtgärden returnera ett HTTP 404-fel, vilket är avsiktligt. Undvik det här problemet genom att ta med en fördröjning på 1 minut innan du tar bort eller byter namn på nya filer. Du kan använda åtgärden Fördröj för att lägga till den här fördröjningen i arbetsflödet.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Filsökväg | filePath |
Sant | string |
Filsökvägen, inklusive filnamnstillägget, i förhållande till rotkatalogen. |
Filinnehåll | fileContent |
Sant | string |
Filinnehållet. |
Returer
Den här åtgärden returnerar ett BlobMetadata-objekt med namnet Body.
Namn | Type |
---|---|
Filmetadata Filnamn | string |
Filmetadata Filsökväg | string |
Filmetadata Filstorlek | string |
Filmetadata | BlobMetadata |
Ta bort fil
Åtgärds-ID: deleteFtpFile
Den här åtgärden tar bort en fil med den angivna filsökvägen.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Filsökväg | filePath |
Sant | string |
Filsökvägen, inklusive filnamnstillägget, i förhållande till rotkatalogen. |
Returer
Ingen
Hämta filinnehåll
Åtgärds-ID: getFtpFileContent
Den här åtgärden hämtar innehållet i en fil med den angivna filsökvägen.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Filsökväg | path |
Sant | string |
Filsökvägen, inklusive filnamnstillägget, i förhållande till rotkatalogen. |
Returer
Den här åtgärden returnerar innehållet i en fil som ett binärt värde med namnet Filinnehåll.
Namn | Type |
---|---|
Filinnehåll | Binära |
Hämta metadata för filen
Åtgärds-ID: getFileMetadata
Den här åtgärden hämtar metadata eller egenskaper för en fil med den angivna filsökvägen.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Filsökväg | path |
Sant | string |
Filsökvägen, inklusive filnamnstillägget, i förhållande till rotkatalogen. |
Returer
Den här åtgärden returnerar följande utdata:
Namn | Type |
---|---|
Filnamn | string |
Filsökväg | string |
Filstorlek | string |
Senast uppdaterad tid | string |
Filmetadata | BlobMetadata |
Visa en lista över filer och undermappar i en mapp
Åtgärds-ID: listFilesInFolder
Den här åtgärden hämtar en lista över filer och undermappar i den angivna mappen.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Mappsökväg | folderPath |
Sant | string |
Mappsökvägen i förhållande till rotkatalogen. |
Filinnehåll | fileContent |
Sant | string |
Innehållet för filen |
Returer
Den här åtgärden returnerar en matris med namnet Svar och innehåller BlobMetadata-objekt .
Namn | Type |
---|---|
Response | Matris med BlobMetadata-objekt |
Uppdatera fil
Åtgärds-ID: updateFile
Den här åtgärden uppdaterar en fil med den angivna filsökvägen och filinnehållet.
Viktigt!
Om du tar bort eller byter namn på en fil på FTP-servern omedelbart efter att du har skapat den i samma arbetsflöde kan åtgärden returnera ett HTTP 404-fel, vilket är avsiktligt. Undvik det här problemet genom att ta med en fördröjning på 1 minut innan du tar bort eller byter namn på nya filer. Du kan använda åtgärden Fördröj för att lägga till den här fördröjningen i arbetsflödet.
Parameters
Name | Key | Obligatoriskt | Type | Beskrivning |
---|---|---|---|---|
Filsökväg | filePath |
Sant | string |
Filsökvägen, inklusive filnamnstillägget, i förhållande till rotkatalogen. |
Filinnehåll | fileContent |
Sant | string |
Innehållet för filen |
Returer
Den här åtgärden returnerar ett BlobMetadata-objekt med namnet Body.
Namn | Type |
---|---|
Brödtext | BlobMetadata |