我需要使用Azure功能触发器读取SFTP位置(不指定文件名)中可用的所有文本文件。 目前,我可以在指定文件名时读取特定文件 - 如下所示: 的 ExternalFileTrigger 的结合
{
"bindings": [
{
"type": "apiHubFileTrigger",
"name": "input",
"direction": "in",
"path": "Outbox",
"connection": "sftp1_SFTP"
},
{
"type": "apiHubFile",
"name": "output",
"direction": "out",
"path": "Inbox/test.txt",
"connection": "googledrive_GOOGLEDRIVE"
}
],
"disabled": false
}
FUNC:
using System;
public static void Run(string input, out string output, TraceWriter log)
{
log.Info("File found: "+input);
output = input;
}
请求正文:
Outbox/test.txt
注意:无论文件名被推送到SFTP位置的任何文件都应该由Azure函数读取。
答案 0 :(得分:0)
您可以使用Binding parameters代替硬编码文件名:test.txt。您还可以指定文件名的模式。有关详细信息,请参阅here。
答案 1 :(得分:0)
但为什么要自己去实例化SFTP客户端呢?
只需使用预建的SFTP connector in Logic Apps,然后调用函数进一步进行自定义处理。如果您的目标是store the file in Google Drive,则可以在逻辑应用程序内部执行所有操作。