【问题标题】:How to specify multiple file types for Azure Function Blob Trigger input binding?如何为 Azure Function Blob Trigger 输入绑定指定多种文件类型?
【发布时间】:2021-01-04 20:47:31
【问题描述】:

我希望只允许将特定文件类型上传到 Azure 存储以触发 Azure 函数。

当前function.json 文件:

{
    "scriptFile": "__init__.py",
    "bindings": [{
        "name": "myblob",
        "type": "blobTrigger",
        "direction": "in",
        "path": "{name}.json",
        "connection": "storage-dev"
    }]
}

我是否可以像这样添加另一个 path 值...

"path": "{name}.json",
"path": "{name}.csv"

...或这样的值数组...

"path": [
    "{name}.csv",
    "{name}.json"
]

the docs 中似乎找不到示例。

编辑: 谢谢@BowmanZhu!您的指导很棒。

  • 将触发器更改为EventGrid
  • 实际上能够创建单个Advanced Filter 而不是创建多个订阅:

【问题讨论】:

标签: json azure-functions azure-storage inputbinding


【解决方案1】:

您希望一个 blobtrigger 同时监控两个或多个路径。

我可以简单地告诉你,这是不可能的。这就是为什么您找不到相关文档的原因,因为没有这样的东西。如果根据自己的要求必须同时使用blobtrigger,只能使用多个blobtrigger。

但你还有另一个选择:eventgridtrigger:

你只需要创建多个事件网格,并让它们指向同一个端点函数。

【讨论】:

  • 感谢您的回复。我不是要监控多个路径,而是只触发特定的文件类型。你知道这是如何使用 Blob 触发器完成的吗?
  • @ericOnline 我知道您的要求是特定类型。恐怕 blobtrigger 无法实现您的想法。你看到我的截图了吗?只需创建一个带有后缀的事件网格端,然后创建另一个带有另一个后缀的事件网格端。
  • 我没有设置 EventGrid。这意味着我必须部署整个 EventGrid RG 和支持资源等。当然有办法"path": "{name}.{json, csv}" 或类似的,不是吗?
  • 我正在听从@BowmanZhu 的建议。为存储帐户设置Event 并不是什么大问题。重构 python 代码以适应EventGrid 触发器需要更多的工作,但我想我可以做到。然后更新function.json
猜你喜欢
  • 2019-11-06
  • 2018-04-03
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
  • 2018-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多