【问题标题】:How to trigger Azure Function from any file uploaded to Azure Storage Account?如何从上传到 Azure 存储帐户的任何文件触发 Azure Function?
【发布时间】:2020-10-06 02:35:26
【问题描述】:

单个 Azure 函数。我希望它从上传到 Azure 存储帐户的所有文件触发。存储账户有多个顶级容器,所以不能指定一个容器,必须是整个账户。

function.json 文件是如何处理的?

这似乎没有触发函数:

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

路径是否需要前导/? ("path": "/{name}.json")

【问题讨论】:

  • 不,你不需要前导斜杠/。您在应用设置中提到了"connection": "storage-dev"
  • 是的。 "storage-dev" : "@Microsoft.KeyVault(SecretUri=https://keyvaultname.vault.azure.net/secrets/secretname/uid)"(使用 KeyVault 参考)
  • 你可以先用一个容器进行测试,然后给容器适当的访问权限
  • 您可以订阅特定存储帐户中的所有 BlobCreated 事件,如果您愿意,我可以向您展示如何做到这一点

标签: azure-functions inputbinding


【解决方案1】:

据我所知,不可能将所有容器都指定为blob触发函数中的触发路径。我能想到的解决方案是创建多个函数,分别指定不同的容器,这样就可以达到你的期望。

【讨论】:

    【解决方案2】:

    实现这一点的方法是使用EventGrid 触发器而不是BlobTrigger。感谢@BowmanZhu over at this thread 指导我。

    【讨论】:

      猜你喜欢
      • 2021-06-13
      • 2022-10-23
      • 2022-11-11
      • 1970-01-01
      • 1970-01-01
      • 2017-02-27
      • 2017-01-04
      • 2021-06-08
      • 2020-02-08
      相关资源
      最近更新 更多