AmQP 1.0 w usłudze Microsoft Azure Service Bus: operacje oparte na żądaniach
W tym artykule zdefiniowano listę operacji żądań/odpowiedzi usługi Microsoft Azure Service Bus. Te informacje są oparte na roboczej wersji roboczej zarządzania amQP w wersji 1.0.
Aby uzyskać szczegółowy przewodnik po protokole AMQP 1.0 na poziomie przewodu, w którym wyjaśniono, jak usługa Service Bus implementuje i opiera się na specyfikacji technicznej APLIKACJI OASIS AMQP 1.0, zobacz przewodnik po protokole AMQP 1.0 w usłudze Azure Service Bus i usłudze Event Hubs.
Pojęcia
ServiceBusReceivedMessage / ServiceBusMessage
Reprezentuje komunikat w usłudze Service Bus, który jest mapowany na komunikat protokołu AMQP. Mapowanie jest definiowane w przewodniku protokołu AMQP usługi Service Bus.
Dołączanie do węzła zarządzania jednostkami
Wszystkie operacje opisane w tym dokumencie są zgodne ze wzorcem żądania/odpowiedzi, są ograniczone do jednostki i wymagają dołączania do węzła zarządzania jednostkami.
Tworzenie linku do wysyłania żądań
Tworzy link do węzła zarządzania na potrzeby wysyłania żądań.
requestLink = session.attach(
role: SENDER,
target: { address: "<entity address>/$management" },
source: { address: ""<my request link unique address>" }
)
Tworzenie linku do odbierania odpowiedzi
Tworzy link do odbierania odpowiedzi z węzła zarządzania.
responseLink = session.attach(
role: RECEIVER,
source: { address: "<entity address>/$management" }
target: { address: "<my response link unique address>" }
)
Przenoszenie komunikatu żądania
Przesyła komunikat żądania.
Opcjonalnie można dodać stan transakcji dla operacji obsługujących transakcje.
requestLink.sendTransfer(
Message(
properties: {
message-id: <request id>,
reply-to: "<my response link unique address>"
},
application-properties: {
"operation" -> "<operation>",
}
),
[Optional] State = transactional-state: {
txn-id: <txn-id>
}
)
Odbieranie komunikatu odpowiedzi
Odbiera komunikat odpowiedzi z linku odpowiedzi.
responseMessage = responseLink.receiveTransfer()
Komunikat odpowiedzi ma następującą postać:
Message(
properties: {
correlation-id: <request id>
},
application-properties: {
"statusCode" -> <status code>,
"statusDescription" -> <status description>,
},
)
Adres jednostki usługi Service Bus
Jednostki usługi Service Bus muszą być rozwiązane w następujący sposób:
Typ encji | Adres | Przykład |
---|---|---|
kolejka | <queue_name> |
“myQueue” “site1/myQueue” |
topic | <topic_name> |
“myTopic” “site2/page1/myQueue” |
subskrypcja | <topic_name>/Subscriptions/<subscription_name> |
“myTopic/Subscriptions/MySub” |
Operacje komunikatów
Odnów komunikat blokadę
Rozszerza blokadę komunikatu przez czas trwania blokady ustawiony w kolejce lub subskrypcji.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:renew-lock |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
lock-tokens |
tablica identyfikatora uuid | Tak | Tokeny blokady komunikatów do odnowienia. |
Uwaga
Token blokady w tym miejscu odwołuje się do delivery-tag
właściwości odebranych komunikatów protokołu AMQP. Jeśli otrzymano komunikat odroczony i chcesz odnowić jego blokadę, użyj właściwości lock-token
w komunikacie zamiast delivery-tag
.
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie nie powiodło się. |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
Wygasania | tablica znacznika czasu | Tak | Nowe wygaśnięcie tokenu blokady komunikatu odpowiadające tokenom blokady żądania. |
Zobacz wiadomość
Podgląd komunikatów bez blokowania.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:peek-message |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
from-sequence-number |
długi | Tak | Numer sekwencji, od którego można zacząć zajrzeć. |
message-count |
int | Tak | Maksymalna liczba komunikatów do wglądu. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — ma więcej komunikatów 204: Brak zawartości — brak więcej komunikatów |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomości | lista map | Tak | Lista komunikatów, w których każda mapa reprezentuje komunikat. |
Mapa reprezentująca komunikat musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomość | tablica bajtów | Tak | Komunikat kodowany przez sieć AMQP 1.0. |
Komunikat harmonogramu
Planuje komunikaty. Ta operacja obsługuje transakcję.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:schedule-message |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomości | lista map | Tak | Lista komunikatów, w których każda mapa reprezentuje komunikat. |
Mapa reprezentująca komunikat musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
message-id | string | Tak | amqpMessage.Properties.MessageId jako ciąg |
identyfikator sesji | string | Nie | amqpMessage.Properties.GroupId as string |
klucz partycji | string | Nie | amqpMessage.MessageAnnotations.”x-opt-partition-key" |
via-partition-key | string | Nie | amqpMessage.MessageAnnotations."x-opt-via-partition-key" |
wiadomość | tablica bajtów | Tak | Komunikat kodowany przez sieć AMQP 1.0. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie nie powiodło się. |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
sekwencja-numery | tablica długich | Tak | Sekwencja zaplanowanych komunikatów. Numer sekwencji służy do anulowania. |
Anuluj zaplanowaną wiadomość
Anuluje zaplanowane komunikaty.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:cancel-scheduled-message |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
sekwencja-numery | tablica długich | Tak | Sekwencja numerów zaplanowanych komunikatów do anulowania. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie nie powiodło się. |
Statusdescription | string | Nie | Opis stanu. |
Operacje sesji
Blokada odnawiania sesji
Rozszerza blokadę komunikatu przez czas trwania blokady ustawiony w kolejce lub subskrypcji.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:renew-session-lock |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
identyfikator sesji | string | Tak | Identyfikator sesji. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — ma więcej komunikatów 204: Brak zawartości — brak więcej komunikatów |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wygaśnięcie | timestamp | Tak | Nowe wygaśnięcie. |
Podgląd komunikatu sesji
Podgląd komunikatów sesji bez blokowania.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:peek-message |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
from-sequence-number | długi | Tak | Numer sekwencji, od którego można zacząć zajrzeć. |
liczba komunikatów | int | Tak | Maksymalna liczba komunikatów do wglądu. |
identyfikator sesji | string | Tak | Identyfikator sesji. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — ma więcej komunikatów 204: Brak zawartości — brak więcej komunikatów |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomości | lista map | Tak | Lista komunikatów, w których każda mapa reprezentuje komunikat. |
Mapa reprezentująca komunikat musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomość | tablica bajtów | Tak | Komunikat kodowany przez sieć AMQP 1.0. |
Ustaw stan sesji
Ustawia stan sesji.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:set-session-state |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
identyfikator sesji | string | Tak | Identyfikator sesji. |
stan sesji | tablica bajtów | Tak | Nieprzezroczyste dane binarne. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Uzyskiwanie stanu sesji
Pobiera stan sesji.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:get-session-state |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
identyfikator sesji | string | Tak | Identyfikator sesji. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
stan sesji | tablica bajtów | Tak | Nieprzezroczyste dane binarne. |
Wyliczanie sesji
Wylicza sesje w jednostce obsługi komunikatów.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:get-message-sessions |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
czas ostatniej aktualizacji | timestamp | Tak | Filtruj, aby uwzględnić tylko sesje zaktualizowane po danym czasie. |
skip | int | Tak | Pomiń liczbę sesji. |
najpopularniejsze | int | Tak | Maksymalna liczba sesji. |
Uwaga
Po ustawieniu LastUpdatedTime
DateTime.MaxValue
wartości (na platformie .NET) metoda Enumerate Sessions zwraca wszystkie sesje, niezależnie od tego, czy mają stan, czy nie. DateTime.MaxValue
na platformie .NET może nie istnieć w innych językach programowania. W takich przypadkach należy użyć sygnatury czasowej równej 253402300800000
milisekundom z epoki (1 stycznia 1970, 00:00:00 GMT), która jest równoważna DateTime.MaxValue
w przypadku platformy .NET.
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — ma więcej komunikatów 204: Brak zawartości — brak więcej komunikatów |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
skip | int | Tak | Liczba pominiętych sesji, jeśli kod stanu to 200. |
identyfikatory sesji | tablica ciągów | Tak | Tablica identyfikatorów sesji, jeśli kod stanu to 200. |
Operacje na regułach
Dodaj regułę
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:add-rule |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
nazwa reguły | string | Tak | Nazwa reguły, w tym nazwy subskrypcji i tematów. |
opis reguły | map | Tak | Opis reguły określony w następnej sekcji. |
Mapa opisu reguły musi zawierać następujące wpisy, w których wzajemnie wyklucza się filtr SQL i filtr korelacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
sql-filter | map | Tak | sql-filter , jak określono w następnej sekcji. |
filtr korelacji | map | Tak | correlation-filter , jak określono w następnej sekcji. |
sql-rule-action | map | Tak | sql-rule-action , jak określono w następnej sekcji. |
Mapa filtru SQL musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wyrażenie | string | Tak | Wyrażenie filtru SQL. |
Mapa filtru korelacji musi zawierać co najmniej jeden z następujących wpisów:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
identyfikator korelacji | string | Nie | |
message-id | string | Nie | |
na wartość | string | Nie | |
odpowiedz na adres | string | Nie | |
label | string | Nie | |
identyfikator sesji | string | Nie | |
reply-to-session-id | string | Nie | |
typ zawartości | string | Nie | |
właściwości | map | Nie. | Mapy do usługi Service Bus ServiceBusMessage.Properties |
Mapa sql-rule-action musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wyrażenie | string | Tak | Wyrażenie akcji Sql. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Usuń regułę
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:remove-rule |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
nazwa reguły | string | Tak | Nazwa reguły, w tym nazwy subskrypcji i tematów. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Pobieranie reguł
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:enumerate-rules |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
najpopularniejsze | int | Tak | Liczba reguł do pobrania na stronie. |
skip | int | Tak | Liczba reguł do pominięcia. Definiuje indeks początkowy (+1) na liście reguł. |
Response
Komunikat odpowiedzi zawiera następujące właściwości:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
rules | lista map | Tak | Lista reguł. Każda reguła jest reprezentowana przez mapę. |
Każdy wpis mapy na liście zawiera następujące właściwości:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
opis reguły | opisany obiekt | Tak | com.microsoft:rule-description z opisanym kodem AMQP 0x0000013700000004 |
com.microsoft.rule-description
sama jest opisaną listą. Ma następujące właściwości:
Indeks | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
0 | opisana lista | Tak | filter jak określono w następnej tabeli. |
1 | opisana lista | Tak | ruleAction jak określono w dalszej części tej sekcji. |
2 | string | Tak | nazwa reguły. |
3 | timestamp | Tak | sygnatura czasowa. |
filter
może zawierać jeden z następujących typów:
Nazwa deskryptora | Kod deskryptora | Wartość |
---|---|---|
com.microsoft:sql-filter:list |
0x000001370000006 | Filtr SQL |
com.microsoft:correlation-filter:list |
0x000001370000009 | Filtr korelacji |
com.microsoft:true-filter:list |
0x000001370000007 | Filtr true reprezentujący 1=1 |
com.microsoft:false-filter:list |
0x000001370000008 | Filtr fałsz reprezentujący 1=0 |
com.microsoft:sql-filter:list
to opisana lista zawierająca następujące elementy:
Indeks | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
0 | string | Tak | Wyrażenie filtru SQL |
1 | int | Tak | zawsze 20. Ta liczba całkowita jest poziomem zgodności filtru SQL. Wskazuje wersję składni filtru SQL. |
com.microsoft:correlation-filter:list
to opisana lista zawierająca następujące elementy:
Indeks (jeśli istnieje) | Typ wartości | Zawartość wartości |
---|---|---|
0 | string | Identyfikator korelacji |
1 | string | Identyfikator komunikatu |
2 | string | Działanie |
3 | string | Odpowiedź do |
100 | string | Etykieta |
5 | string | Identyfikator sesji |
6 | string | Odpowiedz na identyfikator sesji |
7 | string | Typ zawartości |
8 | Mapowanie | Mapa właściwości zdefiniowanych przez aplikację |
ruleAction
może być jednym z następujących typów:
Nazwa deskryptora | Kod deskryptora | Wartość |
---|---|---|
com.microsoft:empty-rule-action:list |
0x0000013700000005 | Pusta akcja reguły — brak akcji reguły |
com.microsoft:sql-rule-action:list |
0x0000013700000006 | Akcja reguły SQL |
com.microsoft:sql-rule-action:list
to opisana lista zawierająca dwa elementy.
Indeks | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
0 | string | Tak | Wyrażenie akcji reguły SQL |
1 | int | Tak | zawsze 20. Ta liczba całkowita jest poziomem zgodności filtru SQL. Wskazuje wersję składni filtru SQL. |
Operacje komunikatów odroczonych
Odbieranie według numeru sekwencji
Odbiera komunikaty odroczone według numeru sekwencji.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:receive-by-sequence-number |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
sekwencja-numery | tablica długich | Tak | Numery sekwencji. |
tryb rozliczania odbiornika | ubyte | Tak | Tryb rozliczania odbiornika określony w rdzeniu AMQP w wersji 1.0. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Treść komunikatu odpowiedzi musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
wiadomości | lista map | Tak | Lista komunikatów, w których każda mapa reprezentuje komunikat. |
Mapa reprezentująca komunikat musi zawierać następujące wpisy:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
lock-token | uuid | Tak | Zablokuj token, jeśli receiver-settle-mode ma wartość 1. |
wiadomość | tablica bajtów | Tak | Komunikat kodowany przez sieć AMQP 1.0. |
Aktualizowanie stanu usuwania
Aktualizacje stan usuwania odroczonych komunikatów. Ta operacja obsługuje transakcje.
Żądanie
Komunikat żądania musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
rozdzielnicy | string | Tak | com.microsoft:update-disposition |
com.microsoft:server-timeout |
uint | Nie. | Limit czasu serwera operacji w milisekundach. |
Treść komunikatu żądania musi składać się z sekcji amqp-value zawierającej mapę z następującymi wpisami:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
stan usuwania | string | Tak | zakończono Opuszczony Zawieszone |
tokeny blokady | tablica identyfikatora uuid | Tak | Tokeny blokady komunikatów w celu zaktualizowania stanu usuwania. |
deadletter-reason | string | Nie | To ustawienie, jeśli stan dyspozycji jest ustawiony na zawieszone. |
deadletter-description | string | Nie | To ustawienie, jeśli stan dyspozycji jest ustawiony na zawieszone. |
properties-to-modify | map | Nie. | Lista właściwości komunikatów obsługiwanych przez brokera usługi Service Bus do zmodyfikowania. |
Response
Komunikat odpowiedzi musi zawierać następujące właściwości aplikacji:
Klucz | Typ wartości | Wymagania | Zawartość wartości |
---|---|---|---|
statusCode | int | Tak | Kod odpowiedzi HTTP [RFC2616] 200: OK — powodzenie, w przeciwnym razie niepowodzenie |
Statusdescription | string | Nie | Opis stanu. |
Następne kroki
Aby dowiedzieć się więcej na temat protokołu AMQP i usługi Service Bus, odwiedź następujące linki: