【问题标题】:How to get the folder ID from an Azure data storage container?如何从 Azure 数据存储容器中获取文件夹 ID?
【发布时间】:2021-10-20 23:34:56
【问题描述】:

我在数据存储容器中创建了一个名为test 的文件夹,如下图所示:

此文件夹由我创建的逻辑应用使用,我在代码中注意到它需要 folder id 才能正常工作(请参阅下面的代码):

"resources":
  [
    {
      "type": "Microsoft.Logic/workflows",
      "apiVersion": "2017-07-01",
      "name": "[parameters('workflows_App_name')]",
      "location": "westus2",
      "properties":
        {
          "state": "Enabled",
          "definition":
            {
              "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
              "contentVersion": "1.0.0.0",
              "parameters":
                { "$connections": { "defaultValue": {}, "type": "Object" } },
              "triggers":
                {
                  "When_a_blob_is_added_or_modified_(properties_only)_(V2)":
                    {
                      "recurrence": { "frequency": "Second", "interval": 10 },
                      "evaluatedRecurrence":
                        { "frequency": "Second", "interval": 10 },
                      "splitOn": "@triggerBody()",
                      "type": "ApiConnection",
                      "inputs":
                        {
                          "queries":
                            {
                              "checkBothCreatedAndModifiedDateTime": false,
                              "folderId": "JTJmb3B0aWDFWRUITTW5zZm9ybWVkLWRhdGEtZnMlMmZ0ZXN0JTJmdGVzd15GHTY9sb2dpYyUyZg=",
                              "maxFileCount": 10
                            }
                        }
                    }
                },
           ....
        ]

"folderId": "JTJmb3B0aWDFWRUITTW5zZm9ybWVkLWRhdGEtZnMlMmZ0ZXN0JTJmdGVzd15GHTY9sb2dpYyUyZg=",

此代码是由逻辑应用 UI 生成的,但我将在生产中部署此模板参数化,并且我将无法通过 UI 创建逻辑应用。我需要找到我将在生产容器中创建的新文件夹的folder idfolder id 是我需要将此模板部署到生产环境的最后一个值。

在哪里可以找到此文件夹 ID 值?不过,我尝试查看存储资源管理器,但没有成功。

【问题讨论】:

  • 看来folderId 是文件夹路径的URL 转义base64 编码值。你可以试试吗?
  • 您可以从get blob metadata using path 连接器获取 Id。正如@GauravMantri 提到的,它是base64 编码值中的文件夹路径。
  • @SwethaKandikonda-MT - 请添加您的评论作为答案。谢谢。
  • %2f/ 的转义值(默认分隔符)。
  • 这是一些非常愚蠢的 API 设计

标签: azure azure-devops azure-logic-apps


【解决方案1】:

您可以使用get blob metadata using path 连接器检索 Id 以获取 blob 元数据。这是base64编码值的文件夹路径。

下面的屏幕截图可以帮助您获取正确的信息

另一种解决方案是手动解码该 ID,这将生成文件夹的位置,如下所示:

感谢@GauravMantri 和@SwethaKandikonda-MT 提供的解决方案。

另一种选择是添加compose 连接器并解码ID。 decodeBase64(body('Get_Blob_Metadata_using_path_(V2)')?['Id'])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-03
    • 2021-10-21
    • 2021-12-26
    • 2020-09-05
    • 2021-05-25
    • 2020-12-29
    • 2021-10-28
    相关资源
    最近更新 更多