Doručování událostí do webhooků pomocí témat oboru názvů – Azure Portal (Preview)
Tento článek obsahuje podrobné pokyny k publikování událostí do Azure Event Gridu ve formátu JSON CloudEvents a jejich doručování pomocí modelu doručení nabízených oznámení. Pokud chcete být konkrétní, publikujete události do tématu oboru názvů ve službě Event Grid a odešlete tyto události z odběru událostí do cíle obslužné rutiny webhooku. Další informace o modelu doručení nabízených oznámení najdete v tématu Přehled doručení nabízených oznámení.
Poznámka:
Obory názvů Azure Event Grid v současné době podporují tokeny sdíleného přístupového podpisu (SAS) a ověřování přístupových klíčů.
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
Vytvoření oboru názvů Event Gridu
Obor názvů Event Gridu poskytuje uživatelem definovaný koncový bod, do kterého publikujete události. Následující příklad vytvoří ve vaší skupině prostředků obor názvů pomocí bashe ve službě Azure Cloud Shell. Název oboru názvů musí být jedinečný, protože je součástí položky DNS (Domain Name System).
Přejděte na Azure Portal.
Na panelu hledání v tématu zadejte
Event Grid Namespaces
a vyberteEvent Grid Namespaces
z výsledků.Na stránce Obory názvů event Gridu vyberte na panelu příkazů + Vytvořit.
Na stránce Vytvořit obor názvů postupujte takto:
- Vyberte předplatné Azure, ve kterém chcete vytvořit obor názvů.
- Novou skupinu prostředků vytvoříte tak, že vyberete Vytvořit novou nebo vyberete existující skupinu prostředků.
- Zadejte název oboru názvů.
- Vyberte umístění, kam chcete vytvořit skupinu prostředků.
- Pak vyberte Zkontrolovat a vytvořit.
- Na stránce Zkontrolovat a vytvořit vyberte Vytvořit.
Na stránce Nasazení vyberte Přejít k prostředku po úspěšném nasazení.
Získání přístupového klíče
- Na stránce Obor názvů služby Event Grid vyberte v nabídce vlevo přístupové klávesy.
- Vyberte tlačítko kopírovat vedle přístupového klíče.
- Uložte přístupový klíč někam. Použijete ho později v tomto rychlém startu.
Vytvoření tématu v oboru názvů
Vytvořte téma obsahující všechny události publikované do koncového bodu oboru názvů.
- V nabídce vlevo vyberte Témata .
- Na stránce Témata vyberte na panelu příkazů + Téma.
- Na stránce Vytvořit téma postupujte takto:
Vytvoření koncového bodu zpráv
Před přihlášením k odběru událostí vytvoříme koncový bod pro zprávu události. Koncový bod obvykle provede akce na základě dat události. Pro zjednodušení tohoto rychlého startu nasadíte předem připravenou webovou aplikaci , která zobrazí zprávy událostí. Nasazené řešení zahrnuje plán služby App Service, webovou aplikaci App Service a zdrojový kód z GitHubu.
Vyberte Nasadit do Azure a nasaďte řešení do svého předplatného.
Na stránce Vlastní nasazení proveďte následující kroky:
V části Skupina prostředků vyberte skupinu prostředků, kterou jste vytvořili při vytváření účtu úložiště. Po dokončení kurzu bude jednodušší vyčistit skupinu prostředků.
Jako název webu zadejte název webové aplikace.
Jako název plánu hostování zadejte název plánu služby App Service, který se má použít k hostování webové aplikace.
Vyberte Zkontrolovat a vytvořit.
Na stránce Zkontrolovat a vytvořit vyberte Vytvořit.
Dokončení nasazení trvá několik minut. Na stránce Nasazení vyberte Přejít do skupiny prostředků.
Na stránce Skupina prostředků v seznamu prostředků vyberte webovou aplikaci, kterou jste vytvořili. V tomto seznamu se zobrazí také plán služby App Service a účet úložiště.
Na stránce služby App Service pro vaši webovou aplikaci vyberte adresu URL a přejděte na web. Adresa URL by měla být v tomto formátu:
https://<your-site-name>.azurewebsites.net
.Potvrďte, že se web zobrazuje, ale zatím se do něj nezveřejní žádné události.
Důležité
Nechte okno prohlížeče Azure Event Grid otevřené, abyste viděli události při jejich publikování.
Vytvoření odběru událostí
Vytvořte odběr událostí, který nastavuje režim doručení na Push, který podporuje doručování nabízených oznámení.
- Přepněte na kartu nebo okno se stránkou oboru názvů Event Gridu otevřenou na kartě nebo v okně se stránkou Oboru názvů služby Event Hubs.
- Na stránce Obor názvů event Gridu vyberte Témata v nabídce vlevo.
- Na stránce Témata vyberte téma, které jste vytvořili v předchozím kroku.
- Na panelu příkazů vyberte + Předplatné .
- Na stránce Vytvořit odběr události postupujte takto:
Na kartě Základní zadejte název odběru události.
Pro režim doručování událostí vyberte Nabízené oznámení.
Jako typ koncového bodu vyberte WebHook.
Vyberte Konfigurovat koncový bod.
Na stránce WebHooku zadejte koncový bod (například:
https://spegridsite0520.azurewebsites.net/api/updates
) tak, jak je znázorněno v následujícím příkladu, a vyberte Potvrdit výběr.Zpět na stránce Vytvořit předplatné vyberte Vytvořit.
Odeslání událostí do tématu
Teď odešlete ukázkovou událost do tématu oboru názvů pomocí kroků v této části.
Deklarace proměnných
Spusťte Cloud Shell na webu Azure Portal. Přepněte na Bash.
Spuštěním následujícího příkazu deklarujte proměnnou, která bude obsahovat název skupiny prostředků. Nahraďte
RESOUREGROUPNAME
názvem vaší skupiny prostředků Azure.resource_group=RESOURCEGROUPNAME
Spuštěním následujícího příkazu v Cloud Shellu deklarujte proměnnou, která bude obsahovat název oboru názvů. Nahraďte
NAMESPACENAME
názvem vašeho oboru názvů Event Gridu.namespace=NAMESPACENAME
Spuštěním následujícího příkazu deklarujte proměnnou, která bude obsahovat hodnotu přístupového klíče, kterou jste si poznamenali dříve. Nahraďte
ACCESSKEY
hodnotou přístupového klíče k oboru názvů služby Event Grid.key=ACCESSKEY
Spuštěním následujícího příkazu v Cloud Shellu deklarujte proměnnou, která bude obsahovat název oboru názvů.
topic=TOPICNAME
Publikování události
Načtěte název hostitele oboru názvů. Použijete ho k vytvoření koncového bodu HTTP oboru názvů, do kterého se odesílají události. Následující operace byly nejprve k dispozici s verzí
2023-06-01-preview
rozhraní API . Název hostitele můžete získat také ze stránky Přehled vašeho oboru názvů Event Gridu na webu Azure Portal.publish_operation_uri="https://"$(az eventgrid namespace show -g $resource_group -n $namespace --query "topicsConfiguration.hostname" --output tsv)"/topics/"$topic:publish?api-version=2023-06-01-preview
Vytvořte ukázkovou událost kompatibilní s CloudEvents :
event=' { "specversion": "1.0", "id": "'"$RANDOM"'", "type": "com.yourcompany.order.ordercreatedV2", "source" : "/mycontext", "subject": "orders/O-234595", "time": "'`date +%Y-%m-%dT%H:%M:%SZ`'", "datacontenttype" : "application/json", "data":{ "orderId": "O-234595", "url": "https://yourcompany.com/orders/o-234595"}} '
Element
data
je datová část události. V tomto poli může být libovolný JSON ve správném formátu. Další informace ovlastnostechPomocí nástroje CURL odešlete událost do tématu. CURL je nástroj, který odesílá požadavky HTTP.
curl -X POST -H "Content-Type: application/cloudevents+json" -H "Authorization:SharedAccessKey $key" -d "$event" $publish_operation_uri
Ověřte, že prohlížeč Azure Event Grid přijal událost.
Ověřte, že webová aplikace Azure Event Grid Viewer zobrazuje události, které přijala z Event Gridu.
Související obsah
V tomto rychlém startu jste jako obslužnou rutinu události použili webhook. Rychlý start, který používá centrum událostí Azure jako obslužnou rutinu události, najdete v tématu Doručování událostí do služby Azure Event Hubs pomocí témat oboru názvů.