首页 > 解决方案 > Azure Logic Apps - Get Blob content from Blob Event

问题描述

My logic app receives a blob event when a blob is created via http:

Logic Apps Designer

I use an Event Grid Subscription, which triggers the Logic App via webhook, when a Blob Created event occurs.

A typical blob event received by the http trigger looks like:

[
  {
    "topic": "/subscriptions/xxxxxxx/resourceGroups/a-resource-group/providers/Microsoft.Storage/storageAccounts/ablobstorageaccount",
    "subject": "/blobServices/default/containers/testcontainer/blobs/9de2125e-5279-4375-bc60-c9987eb99251",
    "eventType": "Microsoft.Storage.BlobCreated",
    "eventTime": "2018-12-07T12:42:53.6561593Z",
    "id": "3c8f8611-001e-0029-722a-8eb18106aef2",
    "data": {
      "api": "PutBlob",
      "clientRequestId": "799b46aa-ff9f-4561-a087-36f790ab0df5",
      "requestId": "3c8f8611-001e-0029-722a-8eb181000000",
      "eTag": "0x8D65C41819B23B9",
      "contentType": "text/plain",
      "contentLength": 22,
      "blobType": "BlockBlob",
      "url": "https://ablobstorageaccount.blob.core.windows.net/testcontainer/9de2125e-5279-4375-bc60-c9987eb99251",
      "sequencer": "00000000000000000000000000003D5300000000018067c3",
      "storageDiagnostics": {
        "batchId": "be84f175-da20-4a44-8a8c-5d33a92fbcd3"
      }
    },
    "dataVersion": "",
    "metadataVersion": "1"
  }
]

How can I use this event data to specify the blob content, using the Designer's Get blob content action?

标签: azure-logic-appsazure-eventgrid

解决方案


除了@dbarkol 答案之外,以下屏幕片段还显示了使用表达式所在的路径获取 blob 内容:

uriPath(triggerBody()?['data'].url)

在此处输入图像描述


推荐阅读