Sdílet prostřednictvím


Odeslání zprávy služby Service Bus

PLATÍ PRO: Vývojář | Základní | Standardní | Prémie

Zásada send-service-bus-message odešle zprávu do fronty nebo tématu služby Azure Service Bus. API požadavek lze volitelně přeposlat na backendovou službu.

Poznámka:

Poznámka:

Nastavte prvky zásad a podřízené prvky v pořadí uvedeném v prohlášení o zásadách. Přečtěte si další informace o tom, jak nastavit nebo upravit zásady služby API Management.

Prohlášení o zásadách

<send-service-bus-message queue-name="service bus queue" topic-name="service bus topic"
      namespace="FQDN of service bus namespace" client-id="ID of user-assigned managed identity">
        <message-properties>
                <message-property name="property-name">property-value</message-property>
                <!-- if there are multiple properties, then add additional message-property elements -->
        </message-properties>
        <payload>"message content"</payload>
</send-service-bus-message>

Attributes

Vlastnost Description Povinné Výchozí
queue-name Určuje název fronty služby Service Bus, do které se má zpráva odeslat. Výrazy zásad a pojmenované hodnoty jsou povolené. Musí queue-name být zadána nebo topic-name musí být zadána. Ne N/A
topic-name Určuje název tématu služby Service Bus pro odeslání zprávy. Výrazy zásad a pojmenované hodnoty jsou povolené. Musí queue-name být zadána nebo topic-name musí být zadána. Ne N/A
namespace Určuje plně kvalifikovaný název domény oboru názvů služby Service Bus. Výrazy zásad a pojmenované hodnoty jsou povolené. Ne N/A
client-id Určuje ID klienta spravované identity přiřazené uživatelem pro ověření pomocí služby Service Bus. Identitě musí být přiřazena role odesílatele dat služby Azure Service Bus. Výrazy zásad a pojmenované hodnoty jsou povolené. Pokud není zadána, použije se identita přiřazená systémem. Ne N/A

Elements

prvek Description Povinné
payload Určuje datovou část zprávy, která se má odeslat do služby Service Bus. Výrazy zásad a pojmenované hodnoty jsou povolené. Ano
message-properties Kolekce dílčích message-property částí, které určují metadata, která se mají předat datovou částí zprávy. Každá message-property z nich se skládá z páru název-hodnota. Výrazy zásad a pojmenované hodnoty jsou povolené. Ne

Usage

Poznámky k využití

  • Musíte předem vytvořit frontu nebo téma služby Azure Service Bus, které obdrží zprávu.
  • Tuto zásadu je možné použít vícekrát pro každou definici zásady.

Examples

Odeslání zprávy do fronty služby Service Bus

V tomto příkladu se do fronty služby Service Bus odešle zpráva skládající se z textu požadavku. Instance služby API Management používá pro přístup identitu přiřazenou uživatelem. Požadavek se pak přesměruje do back-endové služby.

<policies>
    <inbound>
        <send-service-bus-message queue-name="orders" client-id="00001111-aaaa-2222-bbbb-3333cccc4444" namespace="my-service-bus.servicebus.windows.net">
           <payload>@(context.Request.Body.As<string>(preserveContent: true))</payload>
        </send-service-bus-message>
    </inbound>
    <backend>
        <forward-request timeout="60"/>
    </backend>
</policies>

Odeslání zprávy do tématu služby Service Bus

V tomto příkladu se do tématu služby Service Bus odešle zpráva skládající se z textu požadavku. Instance služby API Management používá pro přístup identitu přiřazenou systémem. Požadavek se pak přesměruje do back-endové služby.

<policies>
    <inbound>
        <send-service-bus-message topic-name="orders" namespace="my-service-bus.servicebus.windows.net">
           <payload>@(context.Request.Body.As<string>(preserveContent: true))</payload>
        </send-service-bus-message>
    </inbound>
    <backend>
        <forward-request timeout="60"/>
    </backend>
</policies>

Odeslání zprávy a metadat

V tomto příkladu se do tématu služby Service Bus odešle zpráva skládající se z textu požadavku a vlastnost zprávy se nastaví tak, aby odesílala metadata s datovou částí. Instance služby API Management používá pro přístup identitu přiřazenou systémem. Požadavek se pak přesměruje do back-endové služby.

<policies>
    <inbound>
        <send-service-bus-message topic-name="orders" namespace="my-service-bus.servicebus.windows.net">
           <message-properties>
              <message-property name="Customer">Contoso</message-property>
           </message-properties>
           <payload>@(context.Request.Body.As<string>(preserveContent: true))</payload>
        </send-service-bus-message>
    </inbound>
    <backend>
        <forward-request timeout="60"/>
    </backend>
</policies>

Odeslání zprávy a okamžité vrácení

V tomto příkladu se do tématu služby Service Bus odešle zpráva skládající se z textu požadavku. Instance služby API Management používá pro přístup identitu přiřazenou systémem. Stavový 201 kód odpovědi se pak okamžitě vrátí volajícímu.

<policies>
    <inbound>
        <send-service-bus-message topic-name="orders" namespace="my-service-bus.servicebus.windows.net">
           <payload>@(context.Request.Body.As<string>(preserveContent: true))</payload>
        </send-service-bus-message>
        <return-response>
            <set-status code="201" reason="Created!" />
        </return-response>
    </inbound>
</policies>

Další informace o práci se zásadami najdete v tématech: