Megosztás a következőn keresztül:


Service Bus-üzenet küldése

A KÖVETKEZŐKRE VONATKOZIK: Fejlesztő | Alapszintű | Standard | Prémium

A send-service-bus-message szabályzat üzenetet küld egy Azure Service Bus-üzenetsornak vagy -témakörnek. Az API kérés opcionálisan továbbítható a háttérszolgáltatásnak.

Megjegyzés:

Megjegyzés:

Állítsa be a szabályzat elemeit és gyermekelemeit a szabályzatutasításban megadott sorrendben. További információ az API Management-szabályzatok beállításáról és szerkesztéséről.

Szabályzatutasítás

<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

Attribute Description Kötelező Alapértelmezett
queue-name Megadja annak a service bus-üzenetsornak a nevét, amelybe az üzenetet el szeretné küldeni. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Vagy queue-name meg topic-name kell adni. Nem N/A
topic-name Megadja annak a service bus-témakörnek a nevét, amelybe az üzenetet el szeretné küldeni. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Vagy queue-name meg topic-name kell adni. Nem N/A
namespace A service bus névtér teljes tartománynevét adja meg. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Nem N/A
client-id Megadja a felhasználó által hozzárendelt felügyelt identitás ügyfél-azonosítóját a service bus használatával történő hitelesítéshez. Az identitáshoz hozzá kell rendelni az Azure Service Bus adatküldő szerepkörét. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Ha nincs megadva, a rendszer a rendszer által hozzárendelt identitást használja. Nem N/A

Elements

Elem Description Kötelező
payload Megadja a service busnak küldendő üzenet hasznos adatait. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Igen
message-properties Alelemek gyűjteménye message-property , amelyek megadják az üzenet hasznos adataival továbbítandó metaadatokat. Mindegyik message-property egy név-érték párból áll. A szabályzatkifejezések és az elnevezett értékek engedélyezettek. Nem

Usage

Használati megjegyzések

  • Előre létre kell hoznia az Üzenetet fogadó Azure Service Bus-üzenetsort vagy témakört.
  • Ez a szabályzat szabályzatdefiníciónként többször is használható.

Példák

Üzenet küldése service bus-üzenetsorba

Ebben a példában a kérelem törzséből álló üzenetet a rendszer egy service bus-üzenetsorba küldi. Az API Management-példány egy felhasználó által hozzárendelt identitást használ a hozzáféréshez. A kérés ezután továbbítódik a háttérszolgáltatásnak.

<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>

Üzenet küldése service bus-témakörnek

Ebben a példában a kérelem törzséből álló üzenet egy service bus-témakörbe kerül. Az API Management-példány egy rendszer által hozzárendelt identitást használ a hozzáféréshez. A kérés ezután továbbítódik a háttérszolgáltatásnak.

<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>

Üzenet és metaadatok küldése

Ebben a példában a rendszer a kérelem törzséből álló üzenetet küld egy service bus-témakörnek, és egy üzenettulajdonság úgy van beállítva, hogy metaadatokat küldjön a hasznos adatokkal. Az API Management-példány egy rendszer által hozzárendelt identitást használ a hozzáféréshez. A kérés ezután továbbítódik a háttérszolgáltatásnak.

<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>

Üzenet küldése és azonnali visszatérés

Ebben a példában a kérelem törzséből álló üzenet egy service bus-témakörbe kerül. Az API Management-példány egy rendszer által hozzárendelt identitást használ a hozzáféréshez. Ezután a rendszer azonnal visszaad egy 201 válaszállapot-kódot a hívónak.

<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>

A szabályzatok használatával kapcsolatos további információkért lásd: