搭配使用 CloudEvents v1.0 結構描述與 Azure 事件方格

Azure 事件方格在本質上也支援 CloudEvents v1.0 的 JSON 實作HTTP 通訊協定繫結中的事件。 CloudEvents 是用來說明事件資料的開放式規格

CloudEvents 會提供可發佈及使用雲端型事件的通用事件結構描述來簡化互通性。 此結構描述可支援統一的工具、路由和處理事件的標準方式,以及將外部事件結構描述還原序列化的通用方式。 您可以利用通用結構描述更輕鬆地整合跨平台的工作。

目前有數個共同作業者 (包括 Microsoft) 正透過 Cloud Native Computing Foundation 建置 CloudEvents。 目前可用的版本為 1.0。

本文說明搭配使用事件方格的 CloudEvents 結構描述。

使用 CloudEvents 結構描述的樣本事件

以下為 CloudEvents 格式的 Azure Blob 儲存體事件範例:

{
    "specversion": "1.0",
    "type": "Microsoft.Storage.BlobCreated",  
    "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-account}",
    "id": "9aeb0fdf-c01e-0131-0922-9eb54906e209",
    "time": "2019-11-18T15:13:39.4589254Z",
    "subject": "blobServices/default/containers/{storage-container}/blobs/{new-file}",    
    "data": {
        "api": "PutBlockList",
        "clientRequestId": "4c5dd7fb-2c48-4a27-bb30-5361b5de920a",
        "requestId": "9aeb0fdf-c01e-0131-0922-9eb549000000",
        "eTag": "0x8D76C39E4407333",
        "contentType": "image/png",
        "contentLength": 30699,
        "blobType": "BlockBlob",
        "url": "https://gridtesting.blob.core.windows.net/testcontainer/{new-file}",
        "sequencer": "000000000000000000000000000099240000000000c41c18",
        "storageDiagnostics": {
            "batchId": "681fe319-3006-00a8-0022-9e7cde000000"
        }
    }
}

您可在這裡查看 CloudEvents v1.0 中的可用欄位、欄位類型和定義的詳細描述。

在 CloudEvents 結構描述和事件方格結構描述中所遞交事件的標頭值皆相同,但 content-type 除外。 針對 CloudEvents 結構描述,該標頭值為 "content-type":"application/cloudevents+json; charset=utf-8"。 針對事件方格結構描述,該標頭值為 "content-type":"application/json; charset=utf-8"

CloudEvents 的事件方格

針對 CloudEvents 結構描述中的事件輸入和輸出,您可以使用事件方格。 您可以針對系統事件使用 CloudEvents,例如 Blob 儲存體事件和 IoT 中樞事件以及自訂事件。 除了支援 CloudEvents 之外,事件方格還支援專屬、不可擴充且功能完整的事件方格事件格式。 下表描述當使用 CloudEvents 和事件方格格式做為主題中的輸入結構描述,以及作為事件訂用帳戶中的輸出結構描述時所支援的轉換。 使用 CloudEvents 做為輸入結構描述時,無法使用事件方格輸出結構描述,因為 CloudEvents 支援事件方格結構描述不支援的延伸模組屬性

輸入結構描述 輸出結構描述
CloudEvents 格式 CloudEvents 格式
事件方格格式 CloudEvents 格式
事件方格格式 事件方格格式

對於所有的事件結構描述,事件方格在發佈至事件方格主題和建立事件訂用帳戶時,都需要進行驗證。 如需詳細資訊,請參閱 Event Grid 安全性和驗證

下一步

請參閱如何搭配使用 CloudEvents v1.0 結構描述與事件方格