You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Service Bus能否向特定订阅发送消息?REST API/C# SDK支持吗?

向Azure Service Bus特定订阅发送消息的实现方式

可以直接向主题下的特定订阅发送消息,无需先发送到主题再通过规则过滤,以下是具体实现方式:

使用C# SDK(Azure.Messaging.ServiceBus)

借助最新的Azure.Messaging.ServiceBus NuGet包,可通过ServiceBusClient直接创建指向指定订阅的发送者,示例代码如下:

using Azure.Messaging.ServiceBus;

// 替换为你的Service Bus连接字符串、主题名和目标订阅名
string connectionString = "<Service Bus连接字符串>";
string topicName = "<主题名称>";
string subscriptionName = "<目标订阅名称>";

// 初始化客户端和订阅发送者
await using var client = new ServiceBusClient(connectionString);
ServiceBusSender subscriptionSender = client.CreateSender(topicName, subscriptionName);

// 构造并发送消息
var targetMessage = new ServiceBusMessage("仅发送给指定订阅的消息内容");
await subscriptionSender.SendMessageAsync(targetMessage);

使用REST API

通过Azure Service Bus的REST API调用专属端点,即可直接向订阅发送消息,核心参数说明:

  • 请求方法:POST
  • 请求端点:https://<你的Service Bus命名空间>.servicebus.windows.net/<主题名>/subscriptions/<订阅名>/messages
  • 必填请求头:
    • Authorization:使用SAS令牌或Azure AD令牌完成身份验证
    • Content-Type:application/atom+xml;type=entry;charset=utf-8
  • 请求体示例(XML格式):
<entry xmlns="http://www.w3.org/2005/Atom">
  <content type="application/xml">
    <Message xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
      <Body>仅发送给指定订阅的消息内容</Body>
    </Message>
  </content>
</entry>

内容的提问来源于stack exchange,提问作者Johnny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 05:03:36