azure - Azure函数是否可以监听多个blob以进行blob触发器

标签 azure azure-active-directory azure-functions

我需要创建单个 azure 函数来监听多个 blob 容器。是否可以?

最佳答案

不,每个 Azure Functions 都有恰好一个触发器。然而,还有一种替代方案。您可以通过泛型方法实现对 blob 的处理,定义多个 Function 并让它们都调用泛型方法。

类似于(伪代码):

[FunctionName("BlobTriggerContainer1")]
public static async Task Run([BlobTrigger("container1/{name}")]Stream fileBlob, string name)
{
    await DoTheMagicAsync(fileBlob, name);
}

[FunctionName("BlobTriggerContainer2")]
public static async Task Run([BlobTrigger("container2/{name}")]Stream fileBlob, string name)
{
    await DoTheMagicAsync(fileBlob, name);
}

private void DoTheMagicAsync(Stream stream, string name)
{
    // Do your (async) magic here
}

另一种解决方案是使用 Azure 事件网格。有关如何组合这些服务的更多信息,请参阅 Tutorial: Automate resizing uploaded images using Event Grid .

关于azure - Azure函数是否可以监听多个blob以进行blob触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62267754/

相关文章:

azure - 允许用户指定偏移量/时间戳来配置事件中心的起点

java - 在 Visual Studio Code 中部署 Azure Function 不包含 .jar 文件

azure - 如何在 Azure 测试计划中运行自动化测试

Azure B2C 与 Azure 外部身份

Azure 广告应用程序权限

javascript - 在 Azure Functions 中使用变量出绑定(bind)

Azure管道正在运行旧版本文件(上次提交之前)

windows - Windows 上的 Jenkins 与 Docker - 无法运行程序 "nohup"

javascript - 如何将 Active Directory token curl 命令转换为节点获取

javascript - Azure Function 不通过 context.res 返回响应