你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

ServiceBusClient class

可以创建发送方实例的客户端,用于将消息发送到队列和主题,以及接收方实例以接收来自队列和订阅的消息。

构造函数

ServiceBusClient(string, ServiceBusClientOptions)

创建 ServiceBusClient 类的实例,该实例可用于创建连接字符串中提供的Azure 服务总线命名空间的发送方和接收方。 在使用客户端创建的发送方/接收方发送/接收消息之前,不会与服务建立连接。

ServiceBusClient(string, TokenCredential | NamedKeyCredential | SASCredential, ServiceBusClientOptions)

创建 ServiceBusClient 类的实例,该实例可用于创建Azure 服务总线提供的命名空间的发送方和接收方。 在使用客户端创建的发送方/接收方发送/接收消息之前,不会与服务建立连接。

属性

fullyQualifiedNamespace

为其创建此客户端的服务总线实例的完全限定命名空间。 这可能类似于 .servicebus.windows.net。

identifier

用于标识此 ServiceBusClient 的名称。 如果未指定或为空,将生成一个随机唯一的。

方法

acceptNextSession(string, ServiceBusSessionReceiverOptions)

为已启用会话的Azure 服务总线队列中的下一个可用会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

acceptNextSession(string, string, ServiceBusSessionReceiverOptions)

为已启用会话的Azure 服务总线订阅中的下一个可用会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

acceptSession(string, string, ServiceBusSessionReceiverOptions)

为启用Azure 服务总线队列的会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

acceptSession(string, string, string, ServiceBusSessionReceiverOptions)

为启用了Azure 服务总线订阅的会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

close()

关闭基础 AMQP 连接。 注意:这还会断开从此实例创建的任何接收方或发送方实例的连接。

createReceiver(string, ServiceBusReceiverOptions)

为Azure 服务总线队列创建接收方。 在调用接收器上的方法之一之前,不会与服务建立连接。

若要以死信队列或传输死信队列等子队列为目标,请在选项中提供 subQueue 。 若要详细了解死信队列,请参阅 https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

未在锁定持续时间内解决的消息将被重新传送到队列上设置的最大传递计数的次数,之后它们将被发送到单独的死信队列。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

createReceiver(string, string, ServiceBusReceiverOptions)

为Azure 服务总线订阅创建接收方。 在调用接收器上的方法之一之前,不会与服务建立连接。

若要以死信队列或传输死信队列等子队列为目标,请在选项中提供 subQueue 。 若要详细了解死信队列,请参阅 https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

未在锁定持续时间内解决的消息将重新传送到订阅上设置的最大传递计数的次数,之后它们将被发送到单独的死信队列。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

createRuleManager(string, string)

创建用于管理订阅规则的 ServiceBusRuleManager 实例。

createSender(string, ServiceBusSenderOptions)

创建一个发件人,该发件人可用于发送邮件、计划以后要发送的消息以及取消此类计划邮件。 在调用发送方上的方法之一之前,不会与服务建立连接。

构造函数详细信息

ServiceBusClient(string, ServiceBusClientOptions)

创建 ServiceBusClient 类的实例,该实例可用于创建连接字符串中提供的Azure 服务总线命名空间的发送方和接收方。 在使用客户端创建的发送方/接收方发送/接收消息之前,不会与服务建立连接。

new ServiceBusClient(connectionString: string, options?: ServiceBusClientOptions)

参数

connectionString

string

Azure 服务总线命名空间的连接字符串。 注意:此连接字符串可以包含一个被忽略的 EntityPath。

options
ServiceBusClientOptions

服务总线客户端的选项。

ServiceBusClient(string, TokenCredential | NamedKeyCredential | SASCredential, ServiceBusClientOptions)

创建 ServiceBusClient 类的实例,该实例可用于创建Azure 服务总线提供的命名空间的发送方和接收方。 在使用客户端创建的发送方/接收方发送/接收消息之前,不会与服务建立连接。

new ServiceBusClient(fullyQualifiedNamespace: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options?: ServiceBusClientOptions)

参数

fullyQualifiedNamespace

string

服务总线实例的完整命名空间,可能类似于 .servicebus.windows.net。

credential

TokenCredential | NamedKeyCredential | SASCredential

客户端用于获取令牌的凭据对象,用于对Azure 服务总线的连接进行身份验证。 有关创建凭据,请参阅@azure/标识。 如果针对 AAD 使用接口的 TokenCredential 自己的实现,请将服务总线 ["https://servicebus.azure.net//user_impersonation"] 的“作用域”设置为 以获取适当的令牌。 AzureNamedKeyCredential如果要在SharedAccessKeyName不使用连接字符串的情况下传入 和 ,SharedAccessKey请使用 from @azure/core-auth。 这些字段分别映射到 name 中的 AzureNamedKeyCredentialkey 字段。 AzureSASCredential如果要在不使用连接字符串的情况下传入 ,SharedAccessSignature请使用 from @azure/core-auth。 此字段映射到 signature 中的 AzureSASCredential

options
ServiceBusClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:配置通过 Web 套接字的 AMQP 连接的通道。

属性详细信息

fullyQualifiedNamespace

为其创建此客户端的服务总线实例的完全限定命名空间。 这可能类似于 .servicebus.windows.net。

fullyQualifiedNamespace: string

属性值

string

identifier

用于标识此 ServiceBusClient 的名称。 如果未指定或为空,将生成一个随机唯一的。

identifier: string

属性值

string

方法详细信息

acceptNextSession(string, ServiceBusSessionReceiverOptions)

为已启用会话的Azure 服务总线队列中的下一个可用会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function acceptNextSession(queueName: string, options?: ServiceBusSessionReceiverOptions): Promise<ServiceBusSessionReceiver>

参数

queueName

string

要从中接收的队列的名称。

options
ServiceBusSessionReceiverOptions

选项包括 receiveMode (默认为 peekLock) 、用于创建会话接收器的选项。

返回

可用于接收、查看和结算消息的接收方。

acceptNextSession(string, string, ServiceBusSessionReceiverOptions)

为已启用会话的Azure 服务总线订阅中的下一个可用会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function acceptNextSession(topicName: string, subscriptionName: string, options?: ServiceBusSessionReceiverOptions): Promise<ServiceBusSessionReceiver>

参数

topicName

string

要从中接收的订阅的主题的名称。

subscriptionName

string

订阅的名称 (要接收的) 下 topic

options
ServiceBusSessionReceiverOptions

选项包括 receiveMode (默认为 peekLock) 、用于创建会话接收器的选项。

返回

可用于接收、查看和结算消息的接收方。

acceptSession(string, string, ServiceBusSessionReceiverOptions)

为启用Azure 服务总线队列的会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function acceptSession(queueName: string, sessionId: string, options?: ServiceBusSessionReceiverOptions): Promise<ServiceBusSessionReceiver>

参数

queueName

string

要从中接收的队列的名称。

sessionId

string

需要从中接收消息的会话的 ID

options
ServiceBusSessionReceiverOptions

选项包括 receiveMode (默认为 peekLock) 、用于创建会话接收器的选项。

返回

可用于接收、查看和结算消息的接收方。

acceptSession(string, string, string, ServiceBusSessionReceiverOptions)

为启用了Azure 服务总线订阅的会话创建接收方。

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function acceptSession(topicName: string, subscriptionName: string, sessionId: string, options?: ServiceBusSessionReceiverOptions): Promise<ServiceBusSessionReceiver>

参数

topicName

string

要从中接收的订阅的主题的名称。

subscriptionName

string

订阅的名称 (要接收的) 下 topic

sessionId

string

需要从中接收消息的会话的 ID

options
ServiceBusSessionReceiverOptions

选项包括 receiveMode (默认为 peekLock) 、用于创建会话接收器的选项。

返回

可用于接收、查看和结算消息的接收方。

close()

关闭基础 AMQP 连接。 注意:这还会断开从此实例创建的任何接收方或发送方实例的连接。

function close(): Promise<void>

返回

Promise<void>

createReceiver(string, ServiceBusReceiverOptions)

为Azure 服务总线队列创建接收方。 在调用接收器上的方法之一之前,不会与服务建立连接。

若要以死信队列或传输死信队列等子队列为目标,请在选项中提供 subQueue 。 若要详细了解死信队列,请参阅 https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

未在锁定持续时间内解决的消息将被重新传送到队列上设置的最大传递计数的次数,之后它们将被发送到单独的死信队列。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function createReceiver(queueName: string, options?: ServiceBusReceiverOptions): ServiceBusReceiver

参数

queueName

string

要从中接收的队列的名称。

options
ServiceBusReceiverOptions

用于传递 receiveMode 的选项,默认为 peekLock。

返回

可用于接收、查看和结算消息的接收方。

createReceiver(string, string, ServiceBusReceiverOptions)

为Azure 服务总线订阅创建接收方。 在调用接收器上的方法之一之前,不会与服务建立连接。

若要以死信队列或传输死信队列等子队列为目标,请在选项中提供 subQueue 。 若要详细了解死信队列,请参阅 https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

可以在两种接收模式之间进行选择:“peekLock” (默认) 和“receiveAndDelete”。

  • 在 peekLock 模式下,接收方在队列中指定的持续时间内对消息进行了锁定。
  • 在 receiveAndDelete 模式下,消息在收到时会从服务总线中删除。

未在锁定持续时间内解决的消息将重新传送到订阅上设置的最大传递计数的次数,之后它们将被发送到单独的死信队列。

可以通过在接收方上调用 completeMessage () 、abandonMessage () 、deferMessage () 或 deadletterMessage () 方法来解决消息。

有关 peekLock 和消息结算工作原理的详细信息,请参阅: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

function createReceiver(topicName: string, subscriptionName: string, options?: ServiceBusReceiverOptions): ServiceBusReceiver

参数

topicName

string

要从中接收的订阅的主题的名称。

subscriptionName

string

订阅 (要接收的) 下 topic 的名称。

options
ServiceBusReceiverOptions

传递 receiveMode 的选项,默认为 peekLock。

返回

可用于接收、查看和解决消息的接收方。

createRuleManager(string, string)

创建用于管理订阅规则的 ServiceBusRuleManager 实例。

function createRuleManager(topicName: string, subscriptionName: string): ServiceBusRuleManager

参数

topicName

string

创建 ServiceBusRuleManager 的主题

subscriptionName

string

特定于要为其创建 ServiceBusRuleManager 的 指定主题的订阅。

返回

一个 ServiceBusRuleManager,范围限定为指定的订阅和主题。

createSender(string, ServiceBusSenderOptions)

创建一个发件人,该发件人可用于发送邮件、计划以后要发送的消息以及取消此类计划邮件。 在调用发送方上的方法之一之前,不会与服务建立连接。

function createSender(queueOrTopicName: string, options?: ServiceBusSenderOptions): ServiceBusSender

参数

queueOrTopicName

string

要向其发送消息的队列或主题的名称。

返回