Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ŞUNLAR IÇIN GEÇERLIDIR: Geliştirici | Temel | Standart | Premium
İlke send-service-bus-message bir Azure Service Bus kuyruğuna veya konusuna bir ileti gönderir. API isteği isteğe bağlı olarak arka uç servisine iletilebilir.
Uyarı
- Bu ilke şu anda önizleme aşamasındadır.
- Azure Service Bus'a ileti göndermek için arka plan ve önkoşullar için bkz. Azure API Management'tan Azure Service Bus'a ileti gönderme.
Uyarı
İlkenin öğelerini ve alt öğelerini ilke bildiriminde belirtilen sırayla ayarlayın. API Management ilkelerini ayarlama veya düzenleme hakkında daha fazla bilgi edinin.
İlke bildirimi
<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
| Özellik | Description | Gerekli | Varsayılan |
|---|---|---|---|
queue-name |
İletinin gönderlmek üzere service bus kuyruğunun adını belirtir. İlke ifadelerine ve adlandırılmış değerlere izin verilir. Veya queue-nametopic-name belirtilmelidir. |
Hayı | Mevcut Değil |
topic-name |
İletinin gönderlmek üzere service bus konusunun adını belirtir. İlke ifadelerine ve adlandırılmış değerlere izin verilir. Veya queue-nametopic-name belirtilmelidir. |
Hayı | Mevcut Değil |
namespace |
Service Bus ad alanının tam etki alanı adını belirtir. İlke ifadelerine ve adlandırılmış değerlere izin verilir. | Hayı | Mevcut Değil |
client-id |
Service Bus ile kimlik doğrulaması için kullanıcı tarafından atanan yönetilen kimliğin istemci kimliğini belirtir. Kimliğe Azure Service Bus Veri Gönderen rolü atanmalıdır. İlke ifadelerine ve adlandırılmış değerlere izin verilir. Belirtilmezse, sistem tarafından atanan kimlik kullanılır. | Hayı | Mevcut Değil |
Elements
| Öğe | Description | Gerekli |
|---|---|---|
payload |
Service Bus'a gönderilecek ileti yükünü belirtir. İlke ifadelerine ve adlandırılmış değerlere izin verilir. | Yes |
message-properties |
İleti yüküyle geçirilmesi gereken meta verileri belirten alt öğe koleksiyonu message-property . Her message-property biri bir ad-değer çifti oluşur. İlke ifadelerine ve adlandırılmış değerlere izin verilir. |
Hayı |
Usage
- İlke bölümleri: gelen, giden, hatayla ilgili
- İlke kapsamları: genel, ürün, API, işlem
- Ağ geçitleri: klasik
Kullanım notları
- İleti alan Azure Service Bus kuyruğu veya konusunu önceden oluşturmanız gerekir.
- Bu ilke, ilke tanımı başına birden çok kez kullanılabilir.
Örnekler
Service Bus kuyruğuna ileti gönderme
Bu örnekte, istek gövdesinden oluşan bir ileti bir service bus kuyruğuna gönderilir. API Management örneği, erişim için kullanıcı tarafından atanan bir kimlik kullanır. İstek daha sonra arka uç hizmetine iletilir.
<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>
Service Bus konusuna ileti gönderme
Bu örnekte, istek gövdesinden oluşan bir ileti bir service bus konusuna gönderilir. API Management örneği, erişim için sistem tarafından atanan bir kimlik kullanır. İstek daha sonra arka uç hizmetine iletilir.
<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>
İleti ve meta veri gönderme
Bu örnekte, istek gövdesinden oluşan bir ileti bir service bus konusuna gönderilir ve ileti özelliği yükle meta verileri gönderecek şekilde ayarlanır. API Management örneği, erişim için sistem tarafından atanan bir kimlik kullanır. İstek daha sonra arka uç hizmetine iletilir.
<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>
İleti gönder ve hemen geri dön
Bu örnekte, istek gövdesinden oluşan bir ileti bir service bus konusuna gönderilir. API Management örneği, erişim için sistem tarafından atanan bir kimlik kullanır.
201 Daha sonra hemen çağırana bir yanıt durum kodu döndürülür.
<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>
İlgili ilkeler
İlgili içerik
İlkelerle çalışma hakkında daha fazla bilgi için bkz:
- Öğretici: API'nizi dönüştürme ve koruma
- Politika ifadelerinin ve ayarlarının tam listesi için Politika Referansı
- Politika ifadeleri
- Politikaları ayarlama veya düzenleme
- Yeniden kullanım için ilke yapılandırmaları
- Politika kod parçaları deposu
- İlke oyun alanı deposu
- Azure API Management politika araç seti
- Politikalar oluşturmak, açıklamak ve sorun gidermek için Copilot yardımı alın