当前位置: 首页 > 知识库问答 >
问题:

Azure Blob触发的函数存储帐户连接

西门淮晨
2023-03-14

您好,我正在创建一个新的blob触发的azure函数,我想了解函数头中“Connection=”参数的作用:

public void Run([BlobTrigger("workitems/{name}", Connection = "")]Stream myBlob, string name, ILogger log)

我所做的是完全删除该参数,在我将其部署到我的azure订阅后,它就可以正常工作了。因此,我想知道如果我没有使用连接参数指定任何特定帐户,该函数如何确定要使用哪个存储帐户。

这就是我部署函数的方式:

public void Run([BlobTrigger("workitems/{name}")]Stream myBlob, string name, ILogger log)

共有1个答案

云开诚
2023-03-14

以下链接将有所帮助。

https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-trigger?tabs=csharp

具体来说。

要使用的存储帐户按以下顺序确定:

  • BlosTrigger属性的Connection属性。
  • 应用于与BlosTrigger属性相同的参数的StorageAccount属性。
  • 应用于函数的StorageAccount属性。
  • 应用于类的StorageAccount属性。
  • 函数应用的默认存储帐户(“AzureWebJobStorage”应用设置)。

在您的情况下,将应用最后的设置。检查Azure中的应用设置。

 类似资料:
  • 我有一个函数应用,定义如下 其中< code > let-test-this-in 和< code > let-test-this-out 是连接字符串为< code >“defaultendpointsprocol=”的存储帐户下现有存储队列的名称...;account name =…;AccountKey= ... "(直接从门户中的访问键-连接字符串复制而来)。我发布时生成的function

  • 我使用ServiceBustigger创建了一个Azure Function应用程序(监听主题订阅)。很好。但是现在我试图制作一个QueueTrigger来监听一个简单的队列,但是我得到了以下错误。 我也是这样做的。我在Visual Studio中创建了一个新项目,并将其指向我在Azure上的存储帐户。指定了队列名称。队列存在。我尝试创建一个新的共享访问策略。已将连接字符串复制到本地。设置。jso

  • Azure函数存储帐户Blob容器触发器 在我们的一个用例中,我正在为具有以下条件的存储帐户容器中的任何活动寻找Azure函数触发器 < li >具有特定命名约定的容器(名称如xxxx-input) < li >它应该自动检测是否创建了新的容器(具有特定的命名约定) < li>

  • 告诉我如何在Azure存储帐户中存储PostgreSQL数据库数据。PostgreSQL部署到Azure容器实例。当我重新启动Azure容器实例时,所有数据都会消失。Dockerfile 来自Timescale/Timescaledb:Latest-PG12 az容器创建--resource-group test-env--name test-env--image test-env.azureca

  • 我测试了在新的Azure门户中创建经典存储帐户(manage.windowsazure.com)和“新”存储帐户。将它们设置为类似的,并运行相同的代码来创建和配置队列。但指标仅显示门户中的经典存储帐户(能够在新门户中看到这两个帐户) 我已经像这样设置了ServiceProperties,并且可以在获取服务属性或查看Azure门户时成功地看到保存的这些更改。 当我使用Microsoft Azure

  • 我尝试在我的函数应用程序的AzureWebJobsStorage应用程序设置中更新存储帐户连接字符串,但在更新后,所有函数都开始在响应中给出401 Unauthorized,即使函数应用程序的入站和出站IP地址已列入存储帐户的白名单中。 唯一有效的功能是具有授权级别的功能。代码中匿名。 我试着重启功能应用程序,并从azure pipelines中重新部署它,但似乎没有任何效果。我真的卡住了,不知道