Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’APPLIQUE À : Développeur | De base | Standard | Prime
La send-service-bus-message stratégie envoie un message à une file d’attente ou une rubrique Azure Service Bus. La requête API peut éventuellement être transférée au service backend.
Note
- Cette stratégie est actuellement en préversion.
- Pour connaître les conditions préalables à l’envoi de messages à Azure Service Bus, consultez Comment envoyer des messages à Azure Service Bus à partir de Gestion des API Azure.
Note
Définissez les éléments de stratégie et les éléments enfants dans l’ordre fourni dans la déclaration de politique. En savoir plus sur comment définir ou modifier des stratégies du service Gestion des API.
Déclaration de politique
<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
| Caractéristique | Descriptif | Obligatoire | Par défaut |
|---|---|---|---|
queue-name |
Spécifie le nom de la file d’attente Service Bus à laquelle envoyer le message. Les expressions de stratégie et les valeurs nommées sont autorisées.
queue-name Soit topic-name doit être spécifié. |
Non | N/A |
topic-name |
Spécifie le nom de la rubrique Service Bus à laquelle envoyer le message. Les expressions de stratégie et les valeurs nommées sont autorisées.
queue-name Soit topic-name doit être spécifié. |
Non | N/A |
namespace |
Spécifie le nom de domaine complet de l’espace de noms Service Bus. Les expressions de stratégie et les valeurs nommées sont autorisées. | Non | N/A |
client-id |
Spécifie l’ID client de l’identité managée affectée par l’utilisateur pour s’authentifier auprès de Service Bus. L’identité doit être affectée au rôle Expéditeur de données Azure Service Bus. Les expressions de stratégie et les valeurs nommées sont autorisées. Par défaut, l’identité affectée par le système est utilisée. | Non | N/A |
Elements
| Élément | Descriptif | Obligatoire |
|---|---|---|
payload |
Spécifie la charge utile du message à envoyer au service bus. Les expressions de stratégie et les valeurs nommées sont autorisées. | Oui |
message-properties |
Collection de message-property sous-éléments qui spécifient les métadonnées à transmettre avec la charge utile du message. Chacun message-property se compose d’une paire nom-valeur. Les expressions de stratégie et les valeurs nommées sont autorisées. |
Non |
Usage
- Sections de stratégie : entrant, sortant, en cas d’erreur
- Étendues de la stratégie : global, product, API, operation
- Passerelles : classique
Notes d’utilisation
- Vous devez précréer la file d’attente ou la rubrique Azure Service Bus qui reçoit un message.
- Cette stratégie peut être utilisée plusieurs fois par définition de stratégie.
Examples
Envoyer un message à une file d’attente Service Bus
Dans cet exemple, un message composé du corps de la demande est envoyé à une file d’attente Service Bus. L’instance Gestion des API utilise une identité affectée par l’utilisateur pour l’accès. La requête est ensuite transférée au service principal.
<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>
Envoyer un message à une rubrique Service Bus
Dans cet exemple, un message composé du corps de la demande est envoyé à une rubrique Service Bus. L’instance Gestion des API utilise une identité affectée par le système pour l’accès. La requête est ensuite transférée au service principal.
<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>
Envoyer un message et des métadonnées
Dans cet exemple, un message composé du corps de la demande est envoyé à une rubrique Service Bus et une propriété de message est définie pour envoyer des métadonnées avec la charge utile. L’instance Gestion des API utilise une identité affectée par le système pour l’accès. La requête est ensuite transférée au service principal.
<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>
Envoyer un message et retourner immédiatement
Dans cet exemple, un message composé du corps de la demande est envoyé à une rubrique Service Bus. L’instance Gestion des API utilise une identité affectée par le système pour l’accès. Un 201 code d’état de réponse est ensuite retourné immédiatement à l’appelant.
<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>
Stratégies connexes
Contenu connexe
Pour plus d’informations sur l’utilisation des stratégies, consultez :
- Tutoriel : Transformer et protéger votre API
- Référence de politique pour obtenir la liste complète des déclarations et des paramètres de politique
- Expressions de stratégie
- Définir ou modifier des stratégies
- Réutiliser les configurations de stratégie
- Répertoire de fragments de politiques
- Dépôt de terrain de jeu de stratégie
- Ensemble de stratégies de gestion des API Azure
- Obtenez de l’aide de Copilot pour créer, expliquer et dépanner des politiques