Condividi tramite


ServiceBusReceiverOptions interface

Opzioni da usare per la creazione di un ricevitore.

Proprietà

identifier

Imposta il nome per identificare il ricevitore. Questa operazione può essere usata per correlare i log e le eccezioni. Se non specificato o vuoto, verrà usato un univoco casuale.

maxAutoLockRenewalDurationInMs

Durata massima, in millisecondi, che il blocco del messaggio verrà rinnovato automaticamente dal client. Questo rinnovo automatico si arresta una volta risolto il messaggio.

  • Impostazione predefinita: 300 * 1000 millisecondi (5 minuti).
  • Per disabilitare il rinnovo automatico, impostare su 0.

Esempio:

Se il blocco del messaggio scade in 2 minuti e il tempo di elaborazione dei messaggi è di 8 minuti...

Impostare maxAutoLockRenewalDurationInMs su 10 minuti e il blocco dei messaggi verrà rinnovato automaticamente per 4 volte (equivalente ad avere il messaggio bloccato per 4 volte la durata del blocco sfruttando i rinnovi di blocco).

receiveMode

Rappresenta la modalità di ricezione per il ricevitore.

In modalità receiveAndDelete i messaggi vengono eliminati dal bus di servizio man mano che vengono ricevuti.

In modalità peekLock il ricevitore ha un blocco sul messaggio per la durata specificata nella coda/sottoscrizione.

I messaggi che non vengono risolti all'interno della durata del blocco verranno ridistribuiti quante volte il numero massimo di recapito impostato nella coda/sottoscrizione, dopo il quale vengono inviati a una coda di lettere non recapitate separate.

È possibile risolvere un messaggio chiamando complete(), abandon(), defer() o deadletter() nel messaggio.

Altre informazioni sul funzionamento di peekLock e risoluzione dei messaggi sono disponibili qui: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

skipConvertingDate

Se ignorare la conversione del tipo Date sulle proprietà delle annotazioni dei messaggi o delle proprietà dell'applicazione in numeri durante la ricezione del messaggio. Per impostazione predefinita, le proprietà del tipo Date vengono convertite in numero di epoca UNIX per la compatibilità.

skipParsingBodyAsJson

Opzione per disabilitare il client dall'esecuzione di JSON.parse() nel corpo del messaggio durante la ricezione del messaggio. Non applicabile se il messaggio è stato inviato con il valore o la sequenza del tipo di corpo AMQP. Usare questa opzione quando si preferisce usare direttamente i byte presenti nel corpo del messaggio rispetto al tentativo del client di analizzarlo.

subQueueType

Rappresenta la coda secondaria applicabile per qualsiasi coda o sottoscrizione. I valori validi sono "deadLetter" e "transferDeadLetter". Per altre informazioni sulle code di lettere non recapitabili, vedere https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

Dettagli proprietà

identifier

Imposta il nome per identificare il ricevitore. Questa operazione può essere usata per correlare i log e le eccezioni. Se non specificato o vuoto, verrà usato un univoco casuale.

identifier?: string

Valore della proprietà

string

maxAutoLockRenewalDurationInMs

Durata massima, in millisecondi, che il blocco del messaggio verrà rinnovato automaticamente dal client. Questo rinnovo automatico si arresta una volta risolto il messaggio.

  • Impostazione predefinita: 300 * 1000 millisecondi (5 minuti).
  • Per disabilitare il rinnovo automatico, impostare su 0.

Esempio:

Se il blocco del messaggio scade in 2 minuti e il tempo di elaborazione dei messaggi è di 8 minuti...

Impostare maxAutoLockRenewalDurationInMs su 10 minuti e il blocco dei messaggi verrà rinnovato automaticamente per 4 volte (equivalente ad avere il messaggio bloccato per 4 volte la durata del blocco sfruttando i rinnovi di blocco).

maxAutoLockRenewalDurationInMs?: number

Valore della proprietà

number

receiveMode

Rappresenta la modalità di ricezione per il ricevitore.

In modalità receiveAndDelete i messaggi vengono eliminati dal bus di servizio man mano che vengono ricevuti.

In modalità peekLock il ricevitore ha un blocco sul messaggio per la durata specificata nella coda/sottoscrizione.

I messaggi che non vengono risolti all'interno della durata del blocco verranno ridistribuiti quante volte il numero massimo di recapito impostato nella coda/sottoscrizione, dopo il quale vengono inviati a una coda di lettere non recapitate separate.

È possibile risolvere un messaggio chiamando complete(), abandon(), defer() o deadletter() nel messaggio.

Altre informazioni sul funzionamento di peekLock e risoluzione dei messaggi sono disponibili qui: https://docs.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklock

receiveMode?: "peekLock" | "receiveAndDelete"

Valore della proprietà

"peekLock" | "receiveAndDelete"

skipConvertingDate

Se ignorare la conversione del tipo Date sulle proprietà delle annotazioni dei messaggi o delle proprietà dell'applicazione in numeri durante la ricezione del messaggio. Per impostazione predefinita, le proprietà del tipo Date vengono convertite in numero di epoca UNIX per la compatibilità.

skipConvertingDate?: boolean

Valore della proprietà

boolean

skipParsingBodyAsJson

Opzione per disabilitare il client dall'esecuzione di JSON.parse() nel corpo del messaggio durante la ricezione del messaggio. Non applicabile se il messaggio è stato inviato con il valore o la sequenza del tipo di corpo AMQP. Usare questa opzione quando si preferisce usare direttamente i byte presenti nel corpo del messaggio rispetto al tentativo del client di analizzarlo.

skipParsingBodyAsJson?: boolean

Valore della proprietà

boolean

subQueueType

Rappresenta la coda secondaria applicabile per qualsiasi coda o sottoscrizione. I valori validi sono "deadLetter" e "transferDeadLetter". Per altre informazioni sulle code di lettere non recapitabili, vedere https://docs.microsoft.com/azure/service-bus-messaging/service-bus-dead-letter-queues

subQueueType?: "deadLetter" | "transferDeadLetter"

Valore della proprietà

"deadLetter" | "transferDeadLetter"