你当前正在访问 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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"] 以获取相应的令牌。 如果要传入 SharedAccessKeyNameSharedAccessKey 而不使用连接字符串,请使用 @azure/core-auth 中的 AzureNamedKeyCredential。 这些字段分别映射到 AzureNamedKeyCredential中的 namekey 字段。 如果要传入 SharedAccessSignature 而不使用连接字符串,请使用 @azure/core-auth 中的 AzureSASCredential。 此字段映射到 AzureSASCredential中的 signature

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

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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”。

  • 在速览锁模式下,接收方在队列中指定的持续时间内对消息具有锁定。
  • 在 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

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

返回