Share via


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)

傳回承諾,此承諾會解析為指定 sequenceNumbers 所識別的延後訊息陣列。

receiveMessages(number, ReceiveMessagesOptions)

傳回承諾,解析為從服務匯流排接收的訊息陣列。

renewMessageLock(ServiceBusReceivedMessage)

在佇列/訂用帳戶建立期間指定期間,更新訊息的鎖定。

  • lockedUntilUtc檢查訊息上的 屬性,以瞭解鎖定到期的時間。
  • 如果訊息未在鎖定 defer()deadletter() 到期之前 (解決, complete() 則訊息會回到佇列/訂用帳戶中,以供下一個接收作業使用。
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 或中止中止作業的選項。

傳回

receiveDeferredMessages(Long | Long[], OperationOptionsBase)

傳回承諾,此承諾會解析為指定 sequenceNumbers 所識別的延後訊息陣列。

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

參數

sequenceNumbers

Long | Long[]

需要接收之訊息的序號或序號陣列。

options
OperationOptionsBase

傳遞中止訊號或追蹤選項的選項包。

傳回

如果找不到任何訊息,則為指定 sequenceNumbers 所識別的訊息清單或空白清單。

receiveMessages(number, ReceiveMessagesOptions)

傳回承諾,解析為從服務匯流排接收的訊息陣列。

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

參數

maxMessageCount

number

要接收的訊息數目上限。

options
ReceiveMessagesOptions

一組用來控制接收作業的選項。

  • maxWaitTimeInMs:如果沒有可用的訊息,傳回空陣列之前等待第一個訊息的時間上限。
  • abortSignal:用來中止進行中作業的訊號。

傳回

使用訊息陣列解析的承諾。

renewMessageLock(ServiceBusReceivedMessage)

在佇列/訂用帳戶建立期間指定期間,更新訊息的鎖定。

  • lockedUntilUtc檢查訊息上的 屬性,以瞭解鎖定到期的時間。
  • 如果訊息未在鎖定 defer()deadletter() 到期之前 (解決, complete() 則訊息會回到佇列/訂用帳戶中,以供下一個接收作業使用。
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 ,並停止新訊息抵達。