Connessione a un server FTP dai flussi di lavoro in App per la logica di Azure

Si applica a: App per la logica di Azure (consumo + standard)

Questo articolo illustra come accedere al server FTP (File Transfer Protocol) da un flusso di lavoro in App per la logica di Azure con il connettore FTP. È quindi possibile creare flussi di lavoro automatizzati eseguiti quando vengono attivati da eventi nel server FTP o in altri sistemi ed eseguire azioni per gestire i file nel server FTP.

Ad esempio, il flusso di lavoro può iniziare con un trigger FTP che monitora e risponde agli eventi nel server FTP. Il trigger rende gli output disponibili per le azioni successive nel flusso di lavoro. Il flusso di lavoro può eseguire azioni FTP che creano, inviano, ricevono e gestiscono file tramite l'account del server FTP usando le attività specifiche seguenti:

  • Monitorare quando i file vengono aggiunti o modificati.
  • Creare, copiare, eliminare, elencare e aggiornare i file.
  • Ottenere i metadati e il contenuto dei file.
  • Gestire le cartelle.

Se non si ha familiarità con App per la logica di Azure, vedere la documentazione introduttiva seguente:

Riferimento tecnico Connessione or

Il connettore FTP ha versioni diverse, in base al tipo di app per la logica e all'ambiente host.

Tipo di app per la logica (piano) Ambiente versione di Connessione or
Consumo App per la logica di Azure multi-tenant Connettore gestito (classe Standard). Per altre informazioni, vedere la documentazione seguente:

- Informazioni di riferimento sul connettore gestito FTP
- Connettori gestiti in App per la logica di Azure
Consumo Ambiente del servizio di integrazione Connettore gestito (classe Standard) e I edizione Standard versione, che presenta limiti di messaggio diversi rispetto alla classe Standard. Per altre informazioni, vedere la documentazione seguente:

- Informazioni di riferimento sul connettore gestito FTP
- I edizione Standard limiti dei messaggi
- Connettori gestiti in App per la logica di Azure
Standard App per la logica di Azure a tenant singolo e ambiente del servizio app v3 (solo piani di Windows) Connettore gestito (ospitato in Azure) e connettore predefinito, basato sul provider di servizi. Il connettore predefinito può accedere direttamente alle reti virtuali di Azure con un stringa di connessione. Per altre informazioni, vedere la documentazione seguente:

- Informazioni di riferimento sul connettore gestito FTP
- Sezione relativa alle operazioni del connettore predefinite FTP più avanti in questo articolo
- Connettori gestiti in App per la logica di Azure
- Connettori predefiniti in App per la logica di Azure

Limiti

  • Capacità e velocità effettiva

    • Connettore predefinito per flussi di lavoro Standard:

      Per impostazione predefinita, le azioni FTP possono leggere o scrivere file di dimensioni inferiori o di 200 MB. Attualmente, il connettore predefinito FTP non supporta la suddivisione in blocchi.

    • Connettore gestito o ospitato in Azure per flussi di lavoro a consumo e standard

      Per impostazione predefinita, le azioni FTP possono leggere o scrivere file di dimensioni inferiori o di 50 MB. Per gestire file di dimensioni superiori a 50 MB, le azioni FTP supportano la suddivisione in blocchi dei messaggi. L'azione Recupera contenuto file usa in modo implicito la suddivisione in blocchi.

  • I trigger per il connettore gestito FTP o ospitato in Azure potrebbero riscontrare risultati mancanti, incompleti o ritardati quando viene mantenuto il timestamp "ultima modifica". D'altra parte, il trigger del connettore predefinito FTP nei flussi di lavoro dell'app per la logica Standard non presenta questa limitazione. Per altre informazioni, vedere la sezione Limitazioni del connettore FTP.

  • Il connettore gestito ftp o ospitato in Azure può creare un numero limitato di connessioni al server FTP, in base alla capacità di connessione nell'area di Azure in cui è presente la risorsa dell'app per la logica. Se questo limite pone un problema in un flusso di lavoro dell'app per la logica a consumo, è consigliabile creare un flusso di lavoro dell'app per la logica Standard e usare invece il connettore predefinito FTP.

Prerequisiti

  • Account e sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, iscriversi per creare un account Azure gratuito.

  • Flusso di lavoro dell'app per la logica in cui si vuole accedere all'account FTP. Per avviare il flusso di lavoro con un trigger FTP, è necessario iniziare con un flusso di lavoro vuoto. Per usare un'azione FTP, avviare il flusso di lavoro con un altro trigger, ad esempio il trigger Ricorrenza .

  • Per altri requisiti applicabili sia al connettore gestito FTP che al connettore predefinito, vedere le informazioni di riferimento sul connettore gestito FTP - Requisiti.

Problemi noti

Per impostazione predefinita, i trigger che restituiscono una matrice hanno un'impostazione Split On già abilitata. Con questa impostazione abilitata, il trigger discute automaticamente la matrice creando internamente un'istanza del flusso di lavoro separata per elaborare ogni elemento della matrice. Tutte le istanze del flusso di lavoro vengono eseguite in parallelo in modo che gli elementi della matrice vengano elaborati contemporaneamente.

Tuttavia, quando l'impostazione Split On è abilitata, i trigger del connettore gestito restituiscono gli output per tutti gli elementi della matrice come elenchi. Tutte le azioni successive che fanno riferimento a questi output devono prima gestire questi output come elenchi. Per gestire singolarmente ogni elemento di matrice, è possibile aggiungere azioni aggiuntive. Ad esempio, per scorrere questi elementi di matrice, è possibile usare un ciclo For each . Per i trigger che restituiscono solo metadati o proprietà, usare un'azione che ottiene prima i metadati dell'elemento della matrice e quindi usare un'azione per ottenere il contenuto degli elementi.

È necessario applicare questo approccio solo per i trigger del connettore gestito , non per i trigger del connettore predefiniti che restituiscono output per un elemento di matrice alla volta quando l'impostazione Split On è abilitata.

Si supponga, ad esempio, di avere un trigger del connettore gestito denominato Quando un file viene aggiunto o modificato (solo proprietà) che restituisce i metadati o le proprietà per i file nuovi o aggiornati come matrici. Per ottenere i metadati separatamente per ogni file, è possibile usare un ciclo For each che scorre la matrice. In questo ciclo usare le azioni del connettore gestito seguenti nell'ordine specificato:

  1. Ottenere i metadati del file per ottenere i metadati di ogni file.

  2. Ottenere l'azione relativa al contenuto del file per ottenere il contenuto di ogni file.

Aggiungere un trigger FTP

Un flusso di lavoro dell'app per la logica a consumo può usare solo il connettore gestito FTP. Tuttavia, un flusso di lavoro dell'app per la logica Standard può usare il connettore gestito FTP e il connettore predefinito FTP. In un flusso di lavoro dell'app per la logica Standard, anche i connettori gestiti vengono etichettati come connettori di Azure .

Il connettore gestito FTP e il connettore predefinito dispongono di un solo trigger disponibile:

  • Trigger del connettore gestito: il trigger FTP denominato Quando un file viene aggiunto o modificato (solo proprietà) esegue un flusso di lavoro dell'app per la logica a consumo o standard quando uno o più file vengono aggiunti o modificati in una cartella nel server FTP. Questo trigger ottiene solo le proprietà o i metadati del file, non il contenuto del file. Tuttavia, per ottenere il contenuto del file, il flusso di lavoro può seguire questo trigger con altre azioni FTP.

    Per altre informazioni su questo trigger, vedere Quando viene aggiunto o modificato un file (solo proprietà).

  • Trigger del connettore predefinito: il trigger FTP denominato Quando un file viene aggiunto o aggiornato esegue un flusso di lavoro dell'app per la logica Standard quando uno o più file vengono aggiunti o modificati in una cartella nel server FTP. Questo trigger ottiene solo le proprietà o i metadati del file, non il contenuto del file. Tuttavia, per ottenere il contenuto, il flusso di lavoro può seguire questo trigger con altre azioni FTP. Per altre informazioni su questo trigger, vedere Quando viene aggiunto o aggiornato un file.

I passaggi seguenti usano il portale di Azure, ma con l'estensione App per la logica di Azure appropriata, è anche possibile usare gli strumenti seguenti per creare e modificare i flussi di lavoro dell'app per la logica:

  1. Nella portale di Azure aprire il flusso di lavoro dell'app per la logica vuota nella finestra di progettazione.

  2. Nella finestra di progettazione selezionare Standard nella casella di ricerca. Nella casella di ricerca immettere ftp.

  3. Nell'elenco dei trigger selezionare il trigger denominato Quando viene aggiunto o modificato un filed (solo proprietà).

    Screenshot shows Azure portal, Consumption workflow designer, and FTP trigger selected.

  4. Specificare le informazioni per la connessione. Al termine, seleziona Crea.

    Nota

    Per impostazione predefinita, questo connettore trasferisce i file in formato testo. Per trasferire i file in formato binario, ad esempio, dove e quando viene usata la codifica, selezionare l'opzione trasporto binario.

    Screenshot shows Consumption workflow designer and FTP connection profile.

  5. Dopo aver visualizzato la casella delle informazioni sul trigger, trovare la cartella da monitorare per i file nuovi o modificati.

    1. Nella casella Cartella selezionare l'icona della cartella per visualizzare la directory della cartella.

    2. Selezionare la freccia dell'angolo destro (>). Passare alla cartella desiderata e quindi selezionare la cartella.

    Screenshot shows Consumption workflow designer, FTP trigger, and

    La cartella selezionata viene visualizzata nella casella Cartella.

    Screenshot shows Consumption workflow designer, FTP trigger, and

  6. Al termine, salvare il flusso di lavoro.

Quando si salva il flusso di lavoro, questo passaggio pubblica automaticamente gli aggiornamenti nell'app per la logica distribuita, disponibile in Azure. Con solo un trigger, il flusso di lavoro controlla solo il server FTP in base alla pianificazione specificata. È necessario aggiungere un'azione che risponde al trigger ed esegue un'operazione con gli output del trigger.

Aggiungere un'azione FTP

Un flusso di lavoro dell'app per la logica a consumo può usare solo il connettore gestito FTP. Tuttavia, un flusso di lavoro dell'app per la logica Standard può usare il connettore gestito FTP e il connettore predefinito FTP. Ogni versione ha più azioni. Ad esempio, le versioni del connettore gestite e predefinite hanno le proprie azioni per ottenere i metadati dei file e ottenere il contenuto del file.

  • Azioni del connettore gestito: queste azioni vengono eseguite in un flusso di lavoro dell'app per la logica a consumo o standard.

  • Azioni del connettore predefinite: queste azioni vengono eseguite solo in un flusso di lavoro dell'app per la logica Standard.

I passaggi seguenti usano il portale di Azure, ma con l'estensione App per la logica di Azure appropriata, è anche possibile usare gli strumenti seguenti per creare e modificare i flussi di lavoro dell'app per la logica:

Prima di poter usare un'azione FTP, il flusso di lavoro deve già iniziare con un trigger, che può essere qualsiasi tipo scelto. Ad esempio, è possibile usare il trigger predefinito Ricorrenza generica per avviare il flusso di lavoro in base a una pianificazione specifica.

  1. Nella portale di Azure aprire il flusso di lavoro dell'app per la logica nella finestra di progettazione.

  2. Trovare e selezionare l'azione FTP da usare.

    Questo esempio continua con l'azione Get file metadata (Recupera metadati file) per ottenere i metadati per un singolo elemento di matrice.

    1. Nella finestra di progettazione, sotto il trigger o qualsiasi altra azione, selezionare Nuovo passaggio.

    2. Nella casella di ricerca Scegliere un'operazione selezionare Standard.

    3. Nella casella di ricerca immettere ftp get file metadata .In the search box, enter ftp get file metadata.

    4. Nell'elenco delle azioni selezionare l'azione get file metadata (Ottieni metadati file).

    Screenshot shows the Azure portal, Consumption workflow designer, search box with

  3. Se necessario, fornire le informazioni per la connessione. Al termine, seleziona Crea.

    Nota

    Per impostazione predefinita, questo connettore trasferisce i file in formato testo. Per trasferire i file in formato binario, ad esempio, dove e quando viene usata la codifica, selezionare l'opzione trasporto binario.

    Screenshot shows Consumption workflow designer and FTP connection profile for an action.

  4. Dopo aver visualizzato la casella Get file metadata action information (Ottieni informazioni sui metadati del file), fare clic all'interno della casella File in modo che venga aperto l'elenco di contenuto dinamico.

    È ora possibile selezionare gli output dal trigger precedente.

  5. Nell'elenco di contenuto dinamico, in Quando un file viene aggiunto o modificato, selezionare Elenco di ID file.

    Screenshot shows Consumption workflow designer,

    La proprietà File fa ora riferimento all'output del trigger List of Files ID .The File property now references the List of Files ID trigger output.

  6. Nella finestra di progettazione, sotto l'azione Recupera metadati file, selezionare Nuovo passaggio.

  7. Nella casella di ricerca Scegliere un'operazione selezionare Standard.

  8. Nella casella di ricerca immettere ftp get file content(Recupera contenuto file).

  9. Nell'elenco delle azioni selezionare l'azione Get file content (Recupera contenuto file).

    Screenshot shows the Azure portal, Consumption workflow designer, search box with

  10. Dopo che viene visualizzata la casella Get file content action information (Ottieni informazioni sul contenuto del file), fare clic all'interno della casella File in modo che venga aperto l'elenco di contenuto dinamico.

    È ora possibile selezionare gli output del trigger precedente e qualsiasi altra azione.

  11. Nell'elenco di contenuto dinamico, in Recupera metadati file selezionare ID, che fa riferimento al file aggiunto o aggiornato.

    Screenshot shows Consumption workflow designer,

    La proprietà File fa ora riferimento all'output dell'azione ID .

    Screenshot shows Consumption workflow designer,

  12. Al termine, salvare il flusso di lavoro. Sulla barra degli strumenti della finestra di progettazione seleziona Salva.

Testare il flusso di lavoro

Per verificare che il flusso di lavoro restituisca il contenuto previsto, aggiungere un'altra azione che invia il contenuto dal file aggiunto o aggiornato. In questo esempio viene utilizzata l'azione di Office 365 Outlook denominata Invia un messaggio di posta elettronica.

  1. Nell'azione Recupera contenuto file aggiungere l'azione Office 365 Outlook denominata Invia un messaggio di posta elettronica. Se invece si dispone di un account Outlook.com, aggiungere l'azione Outlook.com Invia un messaggio di posta elettronica e modificare di conseguenza i passaggi seguenti.

    1. Nella finestra di progettazione, sotto l'azione Recupera contenuto file, selezionare Nuovo passaggio.

    2. Nella casella di ricerca Scegliere un'operazione selezionare Standard.

    3. Nella casella di ricerca immettere office 365 outlook invia un messaggio di posta elettronica. Nell'elenco delle azioni selezionare l'azione di Office 365 Outlook denominata Invia un messaggio di posta elettronica.

    Screenshot shows Consumption workflow designer and

  2. Se necessario, accedere all'account di posta elettronica.

  3. Nella casella delle informazioni sull'azione specificare i valori necessari e includere eventuali altri parametri o proprietà da testare.

    Ad esempio, è possibile includere l'output del contenuto file dall'azione Recupera contenuto file. Per trovare questo output, seguire questa procedura:

    1. Nell'azione Recupera contenuto file fare clic all'interno della casella Corpo in modo che venga aperto l'elenco di contenuto dinamico.

    2. Nell'elenco di contenuto dinamico, accanto a Recupera contenuto file, selezionare Visualizza altro.

      Screenshot shows Consumption workflow designer,

    3. Nell'elenco di contenuto dinamico, in Recupera contenuto file selezionare Contenuto file.

      La proprietà Body fa ora riferimento all'output dell'azione Contenuto file.

      Screenshot shows Consumption workflow designer,

  4. Salvare il flusso di lavoro dell'app per la logica.

  5. Per eseguire e attivare il flusso di lavoro, sulla barra degli strumenti della finestra di progettazione selezionare Esegui esecuzione trigger>. Aggiungere un file alla cartella FTP monitorata dal flusso di lavoro.

Operazioni predefinite del connettore FTP

Il connettore predefinito FTP è disponibile solo per i flussi di lavoro dell'app per la logica Standard e fornisce le operazioni seguenti:

Trigger Descrizione
Quando un file viene aggiunto o aggiornato Avviare un flusso di lavoro dell'app per la logica quando un file viene aggiunto o aggiornato nella cartella specificata nel server FTP.

Nota: questo trigger ottiene solo i metadati o le proprietà del file, non il contenuto del file. Tuttavia, per ottenere il contenuto, il flusso di lavoro può seguire questo trigger con l'azione Recupera contenuto file.

Azione Descrizione
Crea file Creare un file usando il percorso e il contenuto del file specificati.
Elimina file Eliminare un file usando il percorso del file specificato.
Ottieni contenuto del file Ottenere il contenuto di un file usando il percorso di file specificato.
Ottieni metadati del file Ottenere i metadati o le proprietà di un file usando il percorso del file specificato.
Elencare file e sottocartelle in una cartella Ottenere un elenco di file e sottocartelle nella cartella specificata.
Aggiorna il file Aggiornare un file usando il percorso e il contenuto del file specificati.

Quando un file viene aggiunto o aggiornato

ID operazione: whenFtpFilesAreAddedOrModified

Questo trigger avvia un flusso di lavoro dell'app per la logica eseguito quando un file viene aggiunto o aggiornato nella cartella specificata nel server FTP. Il trigger ottiene solo i metadati o le proprietà del file, non il contenuto del file. Tuttavia, per ottenere il contenuto, il flusso di lavoro può seguire questo trigger con l'azione Recupera contenuto file.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso cartella folderPath Vero string Percorso della cartella, relativo alla directory radice.
Numero di file da restituire maxFileCount False integer Numero massimo di file da restituire da un'esecuzione di un singolo trigger. I valori validi sono compresi tra 1 e 100.

Nota: per impostazione predefinita, l'impostazione Split On è abilitata e forza questo trigger a elaborare ogni file singolarmente in parallelo.
Timestamp cutoff per ignorare i file meno recenti oldFileCutOffTimestamp False dateTime Tempo di cutoff da usare per ignorare i file meno recenti. Usare il formato YYYY-MM-DDTHH:MM:SStimestamp . Per disabilitare questa funzionalità, lasciare vuota questa proprietà.

Resi

Quando l'impostazione Split On del trigger è abilitata, il trigger restituisce i metadati o le proprietà per un file alla volta. In caso contrario, il trigger restituisce una matrice che contiene i metadati di ogni file.

Nome Tipo
Elenco di file BlobMetadata

Crea file

ID operazione: createFile

Questa azione crea un file usando il percorso del file e il contenuto del file specificati. Se il file esiste già, questa azione sovrascrive il file.

Importante

Se si elimina o si rinomina un file nel server FTP immediatamente dopo la creazione all'interno dello stesso flusso di lavoro, l'operazione potrebbe restituire un errore HTTP 404 , ovvero in base alla progettazione. Per evitare questo problema, includere un ritardo di 1 minuto prima di eliminare o rinominare eventuali file appena creati. È possibile usare l'azioneRitardo per aggiungere questo ritardo al flusso di lavoro.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso file filePath Vero string Percorso del file, inclusa l'estensione del nome file, se presente, rispetto alla directory radice.
Contenuto del file fileContent Vero string Contenuto del file.

Resi

Questa azione restituisce un oggetto BlobMetadata denominato Body.

Nome Tipo
Nome file metadati file string
Percorso file metadati File string
Dimensioni file metadati file string
Metadati dei file BlobMetadata

Elimina file

ID operazione: deleteFtpFile

Questa azione elimina un file usando il percorso del file specificato.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso file filePath Vero string Percorso del file, inclusa l'estensione del nome file, se presente, rispetto alla directory radice.

Resi

None

Ottieni contenuto del file

ID operazione: getFtpFileContent

Questa azione ottiene il contenuto di un file usando il percorso del file specificato.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso file path Vero string Percorso del file, inclusa l'estensione del nome file, se presente, rispetto alla directory radice.

Resi

Questa azione restituisce il contenuto di un file come valore binario denominato Contenuto file.

Nome Tipo
Contenuto del file Binario

Ottieni metadati del file

ID operazione: getFileMetadata

Questa azione ottiene i metadati o le proprietà di un file usando il percorso del file specificato.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso file path Vero string Percorso del file, inclusa l'estensione del nome file, se presente, rispetto alla directory radice.

Resi

Questa azione restituisce gli output seguenti:

Nome Tipo
Nome file string
Percorso file string
Dimensioni file string
Ora dell'ultimo aggiornamento string
Metadati dei file BlobMetadata

Elencare file e sottocartelle in una cartella

ID operazione: listFilesInFolder

Questa azione ottiene un elenco di file e sottocartelle nella cartella specificata.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso cartella folderPath Vero string Percorso della cartella, relativo alla directory radice.
Contenuto del file fileContent Vero string Contenuto del file

Resi

Questa azione restituisce una matrice denominata Response e contiene oggetti BlobMetadata .

Nome Tipo
Risposta Matrice con oggetti BlobMetadata

Aggiorna file

ID operazione: updateFile

Questa azione aggiorna un file usando il percorso e il contenuto del file specificati.

Importante

Se si elimina o si rinomina un file nel server FTP immediatamente dopo la creazione all'interno dello stesso flusso di lavoro, l'operazione potrebbe restituire un errore HTTP 404 , ovvero in base alla progettazione. Per evitare questo problema, includere un ritardo di 1 minuto prima di eliminare o rinominare eventuali file appena creati. È possibile usare l'azioneRitardo per aggiungere questo ritardo al flusso di lavoro.

Parametri

Nome Chiave Richiesto Digita Descrizione
Percorso file filePath Vero string Percorso del file, inclusa l'estensione del nome file, se presente, rispetto alla directory radice.
Contenuto del file fileContent Vero string Contenuto del file

Resi

Questa azione restituisce un oggetto BlobMetadata denominato Body.

Nome Tipo
Testo BlobMetadata

Passaggi successivi