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

ServiceBusReceiver interface

不处理会话的接收器。

属性

entityPath

已为其创建接收方的实体的路径。

identifier

用于标识接收方的名称。 这可用于关联日志和异常。 如果未指定或为空,将生成随机唯一的一个。

isClosed

true如果创建它的接收方或客户端已关闭,则返回 。

receiveMode

用于创建接收方的接收模式。

方法

abandonMessage(ServiceBusReceivedMessage, {[key: string]: number | boolean | string | Date | null})

接收方在消息上持有的锁被放开,使消息在服务总线中再次可用于另一个接收操作。

close()

关闭接收方。 关闭后,接收器不能用于任何进一步的操作。 createReceiver()在 ServiceBusClient 上使用 方法创建新的接收方。

completeMessage(ServiceBusReceivedMessage)

从服务总线中删除消息。

deadLetterMessage(ServiceBusReceivedMessage, DeadLetterOptions & {[key: string]: number | boolean | string | Date | null})

将消息移动到死信子队列。 若要接收死消息,请使用死信子队列的路径创建新的 QueueClient/SubscriptionClient。

deferMessage(ServiceBusReceivedMessage, {[key: string]: number | boolean | string | Date | null})

延迟消息的处理。 sequenceNumber保存消息的 ,以便将来使用 receiveDeferredMessage 方法再次接收消息。

getMessageIterator(GetMessageIteratorOptions)

返回可用于从服务总线接收消息的迭代器。

peekMessages(number, PeekMessagesOptions)

查看下一批活动消息, (队列或订阅上) 包括延迟但不是死信的消息,而无需修改它们。

  • 对 的第一次调用 peekMessages() 提取第一条活动消息。 每个后续调用都会提取后续消息。
  • 与“已接收”消息不同,“速览”消息是该消息的只读版本。 它不能为 Completed/Abandoned/Deferred/Deadlettered
receiveDeferredMessages(Long | Long[], OperationOptionsBase)

返回一个 promise,该承诺解析为由给定 sequenceNumbers标识的延迟消息数组。

receiveMessages(number, ReceiveMessagesOptions)

返回一个 promise,该承诺解析为从服务总线接收的消息数组。

renewMessageLock(ServiceBusReceivedMessage)

在队列/订阅创建期间指定的持续时间内续订消息的锁定。

  • lockedUntilUtc检查消息上的 属性,了解锁过期的时间。
  • 如果在消息锁定过期之前未使用 complete()defer()deadletter() (解决消息,则该消息将重新进入队列/订阅进行下一次接收操作。
subscribe(MessageHandlers, SubscribeOptions)

将消息流式传输到消息处理程序。

属性详细信息

entityPath

已为其创建接收方的实体的路径。

entityPath: string

属性值

string

identifier

用于标识接收方的名称。 这可用于关联日志和异常。 如果未指定或为空,将生成随机唯一的一个。

identifier: string

属性值

string

isClosed

true如果创建它的接收方或客户端已关闭,则返回 。

isClosed: boolean

属性值

boolean

receiveMode

用于创建接收方的接收模式。

receiveMode: "peekLock" | "receiveAndDelete"

属性值

"peekLock" | "receiveAndDelete"

方法详细信息

abandonMessage(ServiceBusReceivedMessage, {[key: string]: number | boolean | string | Date | null})

接收方在消息上持有的锁被放开,使消息在服务总线中再次可用于另一个接收操作。

function abandonMessage(message: ServiceBusReceivedMessage, propertiesToModify?: {[key: string]: number | boolean | string | Date | null}): Promise<void>

参数

propertiesToModify

{[key: string]: number | boolean | string | Date | null}

放弃消息时要修改的消息的属性。

返回

Promise<void>

close()

关闭接收方。 关闭后,接收器不能用于任何进一步的操作。 createReceiver()在 ServiceBusClient 上使用 方法创建新的接收方。

function close(): Promise<void>

返回

Promise<void>

completeMessage(ServiceBusReceivedMessage)

从服务总线中删除消息。

function completeMessage(message: ServiceBusReceivedMessage): Promise<void>

参数

返回

Promise<void>

deadLetterMessage(ServiceBusReceivedMessage, DeadLetterOptions & {[key: string]: number | boolean | string | Date | null})

将消息移动到死信子队列。 若要接收死消息,请使用死信子队列的路径创建新的 QueueClient/SubscriptionClient。

function deadLetterMessage(message: ServiceBusReceivedMessage, options?: DeadLetterOptions & {[key: string]: number | boolean | string | Date | null}): Promise<void>

参数

options

DeadLetterOptions & {[key: string]: number | boolean | string | Date | null}

拒绝消息时可以提供的 DeadLetter 选项。

返回

Promise<void>

deferMessage(ServiceBusReceivedMessage, {[key: string]: number | boolean | string | Date | null})

延迟消息的处理。 sequenceNumber保存消息的 ,以便将来使用 receiveDeferredMessage 方法再次接收消息。

function deferMessage(message: ServiceBusReceivedMessage, propertiesToModify?: {[key: string]: number | boolean | string | Date | null}): Promise<void>

参数

propertiesToModify

{[key: string]: number | boolean | string | Date | null}

延迟消息时要修改的消息的属性

返回

Promise<void>

getMessageIterator(GetMessageIteratorOptions)

返回可用于从服务总线接收消息的迭代器。

function getMessageIterator(options?: GetMessageIteratorOptions): AsyncIterableIterator<ServiceBusReceivedMessage>

参数

options
GetMessageIteratorOptions

一组用于控制接收操作的选项。

  • abortSignal:用于中止正在进行的操作的信号。

返回

AsyncIterableIterator<ServiceBusReceivedMessage>

peekMessages(number, PeekMessagesOptions)

查看下一批活动消息, (队列或订阅上) 包括延迟但不是死信的消息,而无需修改它们。

  • 对 的第一次调用 peekMessages() 提取第一条活动消息。 每个后续调用都会提取后续消息。
  • 与“已接收”消息不同,“速览”消息是该消息的只读版本。 它不能为 Completed/Abandoned/Deferred/Deadlettered
function peekMessages(maxMessageCount: number, options?: PeekMessagesOptions): Promise<ServiceBusReceivedMessage[]>

参数

maxMessageCount

number

要查看的最大消息数。

options
PeekMessagesOptions

允许指定要速览的最大消息数、开始速览的 sequenceNumber 或 abortSignal 以中止操作的选项。

返回

receiveDeferredMessages(Long | Long[], OperationOptionsBase)

返回一个 promise,该承诺解析为由给定 sequenceNumbers标识的延迟消息数组。

function receiveDeferredMessages(sequenceNumbers: Long | Long[], options?: OperationOptionsBase): Promise<ServiceBusReceivedMessage[]>

参数

sequenceNumbers

Long | Long[]

需要接收的消息的序列号或序列号数组。

options
OperationOptionsBase

用于传递中止信号或跟踪选项的选项包。

返回

由给定 sequenceNumbers 标识的消息列表;如果未找到任何消息,则为空列表。

receiveMessages(number, ReceiveMessagesOptions)

返回一个 promise,该承诺解析为从服务总线接收的消息数组。

function receiveMessages(maxMessageCount: number, options?: ReceiveMessagesOptions): Promise<ServiceBusReceivedMessage[]>

参数

maxMessageCount

number

要接收的最大消息数。

options
ReceiveMessagesOptions

一组用于控制接收操作的选项。

  • maxWaitTimeInMs:如果没有可用消息,则返回空数组之前等待第一条消息的最长时间。
  • abortSignal:用于中止正在进行的操作的信号。

返回

一个通过消息数组解析的承诺。

renewMessageLock(ServiceBusReceivedMessage)

在队列/订阅创建期间指定的持续时间内续订消息的锁定。

  • lockedUntilUtc检查消息上的 属性,了解锁过期的时间。
  • 如果在消息锁定过期之前未使用 complete()defer()deadletter() (解决消息,则该消息将重新进入队列/订阅进行下一次接收操作。
function renewMessageLock(message: ServiceBusReceivedMessage): Promise<Date>

参数

返回

Promise<Date>

采用 UTC 格式的新锁令牌到期日期和时间。

subscribe(MessageHandlers, SubscribeOptions)

将消息流式传输到消息处理程序。

function subscribe(handlers: MessageHandlers, options?: SubscribeOptions): { close() => Promise<void> }

参数

handlers
MessageHandlers

为消息和错误调用的处理程序。

options
SubscribeOptions

订阅选项。

返回

{ close() => Promise<void> }

一个对象,可以关闭,将任何剩余消息发送到 handlers 并阻止新消息到达。