Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett Event Grid-anpassat ämne är en endpoint som dina applikationer skickar sina egna händelser till, så att Event Grid kan dirigera dessa händelser till intresserade prenumeranter. Den här artikeln visar hur du publicerar händelser till ett anpassat ämne med hjälp av accessnycklar, som autentiserar dina förfrågningar utan att du behöver ställa in Microsoft Entra ID. Du får ämnesändpunkten och accessnyckeln, formaterar en händelsepayload, skickar ett exempelevent och granskar svaret.
Service Level Agreement (SLA) gäller endast för inlägg som matchar det förväntade formatet.
Förutsättningar
- Ett anpassat ämne för Azure Event Grid. För att skapa en, se Skicka anpassade händelser till en webbterminal genom att använda Azure-portalen.
- Azure CLI,Azure PowerShell, eller tillgång till Azure-portalen för att hämta ämnesändpunkten och åtkomstnyckeln.
- Ett verktyg som kan skicka HTTP POST-förfrågningar, såsom
curl.
Kommentar
Microsoft Entra-autentisering ger bättre autentiseringsstöd än autentisering för åtkomstnyckel eller delad åtkomstsignatur (SAS). Genom att använda Microsoft Entra-autentisering validerar Microsoft Entra-identitetsleverantören identiteten, så du behöver inte hantera nycklar i din kod. Du drar också nytta av säkerhetsfunktioner inbyggda i Microsofts identitetsplattform, såsom villkorad åtkomst, som hjälper till att förbättra din applikations säkerhet. Mer information finns i Autentisera publiceringsklienter med Microsoft Entra-ID.
Hämta ämnesslutpunkten
För att publicera händelser till ett anpassat ämne, skicka en HTTP POST-förfrågan med följande URI-format: https://<topic-endpoint>?api-version=2018-01-01. En giltig URI är till exempel: https://exampletopic.westus2-1.eventgrid.azure.net/api/events?api-version=2018-01-01. För att få endpointen för ett anpassat ämne, använd Azure-portalen, Azure CLI eller Azure PowerShell.
Hitta ämnets slutpunkt på fliken Översikt på sidan Event Grid Topic i Azure-portalen.
Hämta åtkomstnyckeln
I begäran ska du inkludera ett rubrikvärde med namnet aeg-sas-key som innehåller en nyckel för autentisering. Ett giltigt rubrikvärde är aeg-sas-key: xxxxxxxxxxxxxxxxxxxxxxxtill exempel . För att få nyckeln till ett anpassat ämne, använd Azure-portalen, Azure CLI eller Azure PowerShell.
För att få åtkomstnyckeln för det anpassade ämnet, välj fliken Åtkomstnycklar på sidan Event Grid Topic i Azure-portalen.
Formatera händelsens nyttolast
Formatera varje händelse som ett JSON-objekt. Fälten på högsta nivå är desamma som standard resursdefinierade händelser, och egenskapen data innehåller de egenskaper som är unika för ditt anpassade ämne. Som utgivare definierar du innehållet i objektet data . För en beskrivning av varje egenskap, se Azure Event Grid event schema.
[
{
"id": string,
"eventType": string,
"subject": string,
"eventTime": string-in-date-time-format,
"data":{
object-unique-to-each-publisher
},
"dataVersion": string
}
]
Ha dessa storleksgränser i åtanke när du bygger lasten:
- Händelsearrayen kan ha en total storlek på upp till 1 MB.
- Maxstorleken för en enskild händelse är 1 MB. Händelser över 64 KB medför avgifter i 64-KB-steg.
- En batch kan innehålla maximalt 5 000 händelser.
Följande exempel visar en giltig händelsenyttolast:
[{
"id": "1807",
"eventType": "recordInserted",
"subject": "myapp/vehicles/motorcycles",
"eventTime": "2017-08-10T21:03:07+00:00",
"data": {
"make": "Ducati",
"model": "Monster"
},
"dataVersion": "1.0"
}]
Skicka en exempelhändelse
Det här avsnittet visar hur du skickar en exempelhändelse till det anpassade ämnet.
Starta Cloud Shell i Azure Portal.
Kör kommandona från Azure PowerShell eller Azure CLI i Bash- eller PowerShell-sessionen i Cloud Shell.
Granska svaret
Efter att du postat på ämnesändpunkten får du ett svar. Svaret är en HTTP-standardsvarskod. Några vanliga svar är:
| Resultat | Svar |
|---|---|
| Lyckades | 200 Okej |
| Händelsedata har felaktigt format | 400 – Felaktig begäran |
| Ogiltig åtkomstnyckel | 401 – Ej behörig |
| Felaktig slutpunkt | 404 – Hittades inte |
| Matris eller händelse överskrider storleksgränserna | 413 nyttolast är för stor |
Vid fel används följande format i meddelandetexten:
{
"error": {
"code": "<HTTP status code>",
"message": "<description>",
"details": [{
"code": "<HTTP status code>",
"message": "<description>"
}]
}
}
Relaterat innehåll
- Övervaka Leverans av Event Grid-meddelanden: Lär dig hur du spårar och felsöker händelseleveranser.
- Säkerhet och autentisering i Event Grid: Förstå hur du skyddar dina händelser med autentiseringsnycklar.
- Event Grid-prenumerationsschema: Stegvis vägledning om hur du skapar en Event Grid-prenumeration.