![](/img/trans.png)
[英]Azure Storage Emulator Connection string for Azure Function Queue Trigger
[英]Storage account connection string does not exist - deploying Queue storage trigger for Azure Functions
我想創建一個 azure 存儲隊列觸發 azure function。 我瀏覽了以下教程https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-queue-trigger
我基本上想在將消息推入隊列時觸發 function 並在 function 完成后將結果推回另一個隊列。
{
"bindings": [
{
"name": "input",
"type": "queueTrigger",
"direction": "in",
"queueName": "queue-trigger",
"connection": ""
},
{
"type": "queue",
"direction": "out",
"name": "output",
"queueName": "queue-receiver",
"connection": ""
}
]
}
當我部署 function 時,在監視器中出現的日志中出現以下錯誤。
2022-09-10T12:16:53.412 [Error] The 'QueueTrigger' function is in error:
Microsoft.Azure.WebJobs.Host: Error indexing method 'Functions.QueueTrigger'.
Microsoft.Azure.WebJobs.Extensions.Storage.Queues: Storage account connection string 'AzureWebJobs<storage account name>_STORAGE' does not exist. Make sure that it is a defined App Setting.
您可以看到我已經定義了三個應用程序設置。
AzureWebJobs<storage account>_STORAGE
AzureWebJobsStorage
<storage account>_STORAGE
根據文檔,如果 function.json 中的connection
為空,則將使用AzureWebJobsStorage 。
即使我嘗試設置connection:"<storage account>_STORAGE"
,也引發了同樣的錯誤。
我已經在我的環境中進行了復制,以下解決方法對我有用:
我已經創建了一個存儲帳戶並復制了如下連接,我也在那里創建了一個隊列,如下所示
然后我將其粘貼到 vs studio 的 local.settings 文件中,如下所示:
現在我也發布了它 azure。 單擊配置中的應用程序設置,如果存在連接字符串名稱,則打開該名稱並粘貼連接字符串。 如果不是然后在已發布的 function 應用程序中,我在應用程序設置中創建了一個連接字符串,並復制了我從存儲帳戶中獲取的相同連接字符串
然后點擊確定然后保存。 然后在隊列中發送消息,如下所示:
這種解決方法對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.