Niestandardowe właściwości dostarczania
Subskrypcje zdarzeń umożliwiają konfigurowanie nagłówków HTTP uwzględnionych w dostarczanych zdarzeniach. Ta funkcja umożliwia ustawianie niestandardowych nagłówków wymaganych przez miejsce docelowe. Podczas tworzenia subskrypcji zdarzeń można skonfigurować maksymalnie 10 nagłówków. Każda wartość nagłówka nie powinna być większa niż 4096 (4K) bajtów.
Możesz ustawić nagłówki niestandardowe dla zdarzeń dostarczanych do następujących miejsc docelowych:
- Elementy webhook
- Tematy i kolejki usługi Azure Service Bus
- Azure Event Hubs
- Azure Functions
- Połączenia hybrydowe usługi Azure Relay
Podczas tworzenia subskrypcji zdarzeń w witrynie Azure Portal możesz użyć karty Właściwości dostarczania, aby ustawić niestandardowe nagłówki HTTP. Ta strona umożliwia ustawianie stałych i dynamicznych wartości nagłówka.
Ustawianie statycznych wartości nagłówka
Aby ustawić nagłówki o stałej wartości, podaj nazwę nagłówka i jego wartość w odpowiednich polach:
Możesz sprawdzić , czy jest wpis tajny? podczas dostarczania poufnych danych. Widoczność poufnych danych w witrynie Azure Portal zależy od uprawnień RBAC użytkownika.
Ustawianie dynamicznych wartości nagłówka
Wartość nagłówka można ustawić na podstawie właściwości w zdarzeniu przychodzącym. Składnia JsonPath służy do odwoływania się do wartości właściwości zdarzenia przychodzącego, która ma być używana jako wartość nagłówka w żądaniach wychodzących. Obsługiwane są tylko wartości JSON ciągu, liczby i wartości logicznej. Aby na przykład ustawić wartość nagłówka o nazwie Channel przy użyciu wartości przychodzącego systemu właściwości zdarzeń w danych zdarzenia, skonfiguruj subskrypcję zdarzeń w następujący sposób:
Interfejs wiersza polecenia platformy Azure
Użyj parametru --delivery-attribute-mapping
podczas tworzenia subskrypcji przy użyciu az eventgrid event-subscription create
polecenia . Oto przykład:
az eventgrid event-subscription create -n es1 \
--source-resource-id /subscriptions/{SubID}/resourceGroups/{RG}/providers/Microsoft.EventGrid/topics/topic1
--endpoint-type storagequeue \
--endpoint /subscriptions/{SubID}/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/sa1/queueservices/default/queues/q1 \
--enable-advanced-filtering-on-arrays true
--delivery-attribute-mapping staticproperty1 static somestaticvalue2 true
--delivery-attribute-mapping staticproperty2 static somestaticvalue3 false
--delivery-attribute-mapping dynamicproperty1 dynamic data.key1
Przykłady
Ta sekcja zawiera kilka przykładów użycia właściwości dostarczania.
Ustawianie nagłówka autoryzacji przy użyciu tokenu elementu nośnego (przykład nie normacyjny)
Ustaw wartość na nagłówek autoryzacji, aby zidentyfikować żądanie za pomocą programu obsługi elementu webhook. Nagłówek autoryzacji można ustawić, jeśli element webhook nie jest chroniony za pomocą identyfikatora Entra firmy Microsoft.
Nazwa nagłówka | Typ nagłówka | Wartość nagłówka |
---|---|---|
Authorization |
Static | BEARER SlAV32hkKG... |
Żądania wychodzące powinny teraz zawierać nagłówek ustawiony w subskrypcji zdarzeń:
POST /home.html HTTP/1.1
Host: acme.com
Authorization: BEARER SlAV32hkKG...
Uwaga
Definiowanie nagłówków autoryzacji jest rozsądną opcją, gdy miejscem docelowym jest element webhook. Nie należy jej używać w przypadku funkcji subskrybowanych za pomocą identyfikatora zasobu, usługi Service Bus, usługi Event Hubs i połączeń hybrydowych, ponieważ te miejsca docelowe obsługują własne schematy uwierzytelniania w przypadku użycia z usługą Event Grid.
Przykład usługi Service Bus
Usługa Azure Service Bus obsługuje używanie następujących właściwości komunikatów podczas wysyłania pojedynczych komunikatów.
Nazwa nagłówka | Typ nagłówka |
---|---|
MessageId |
Dynamiczny |
PartitionKey |
Tryb statyczny lub dynamiczny |
SessionId |
Tryb statyczny lub dynamiczny |
CorrelationId |
Tryb statyczny lub dynamiczny |
Label |
Tryb statyczny lub dynamiczny |
ReplyTo |
Tryb statyczny lub dynamiczny |
ReplyToSessionId |
Tryb statyczny lub dynamiczny |
To |
Tryb statyczny lub dynamiczny |
ViaPartitionKey |
Tryb statyczny lub dynamiczny |
Uwaga
- Wartość
MessageId
domyślna to wewnętrzny identyfikator zdarzenia usługi Event Grid. Można go zastąpić. Na przykładdata.field
. - Można ustawić tylko wartość
SessionId
lubMessageId
.
Można również określić właściwości niestandardowe podczas wysyłania komunikatów do kolejek lub tematów usługi Service Bus. Nie używaj prefiksu aeg-
, ponieważ jest używany przez właściwości systemowe w nagłówkach komunikatów. Aby uzyskać listę właściwości nagłówka komunikatów, zobacz Service Bus jako program obsługi zdarzeń
Przykład usługi Event Hubs
Jeśli chcesz opublikować zdarzenia w określonej partycji w centrum zdarzeń, ustaw PartitionKey
właściwość w subskrypcji zdarzeń, aby określić klucz partycji identyfikujący docelową partycję centrum zdarzeń.
Nazwa nagłówka | Typ nagłówka |
---|---|
PartitionKey |
Tryb statyczny lub dynamiczny |
Można również określić właściwości niestandardowe podczas wysyłania komunikatów do centrum zdarzeń. Nie używaj prefiksu aeg-
dla nazwy właściwości, ponieważ jest on używany przez właściwości systemowe w nagłówkach komunikatów. Aby uzyskać listę właściwości nagłówka wiadomości, zobacz Event Hubs jako program obsługi zdarzeń
Konfigurowanie czasu wygaśnięcia zdarzeń wychodzących do kolejek usługi Azure Storage
W przypadku miejsca docelowego kolejek usługi Azure Storage można skonfigurować tylko czas wygaśnięcia komunikatu wychodzącego, gdy zostanie on dostarczony do kolejki usługi Azure Storage. Jeśli nie zostanie podany czas, domyślny czas wygaśnięcia wiadomości wynosi 7 dni. Możesz również ustawić zdarzenie tak, aby nigdy nie wygasało.
Następne kroki
Aby uzyskać więcej informacji na temat dostarczania zdarzeń, zobacz następujący artykuł: