Condividi tramite


ServiceBusSender interface

Un mittente può essere usato per inviare messaggi, pianificare l'invio di messaggi in un secondo momento e annullare tali messaggi pianificati. Usare la funzione createSender in ServiceBusClient per creare un'istanza di sender. La classe Sender è un'astrazione sul collegamento del mittente AMQP sottostante.

Proprietà

entityPath

Percorso dell'entità per cui è stato creato il mittente.

identifier

Nome utilizzato per identificare il mittente. Può essere usato per correlare log ed eccezioni. Se non specificato o vuoto, verrà generato un valore univoco casuale.

isClosed

Restituisce true se il mittente o il client che lo ha creato è stato chiuso.

Metodi

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Annulla più messaggi pianificati per essere visualizzati in una coda o una sottoscrizione del bus di servizio.

close()

Chiude il collegamento del mittente AMQP sottostante. Una volta chiuso, il mittente non può essere usato per ulteriori operazioni. Usare la funzione createSender in QueueClient o TopicClient per creare un'istanza di un nuovo mittente

createMessageBatch(CreateMessageBatchOptions)

Crea un'istanza di ServiceBusMessageBatch a cui è possibile aggiungere messaggi finché non viene raggiunta la dimensione massima supportata. Il batch può essere passato al metodo <xref:send> per inviare i messaggi al bus di servizio di Azure.

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

Pianifica i messaggi specificati da visualizzare nella coda o nella sottoscrizione del bus di servizio in un secondo momento.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

Invia i messaggi specificati dopo la creazione di un collegamento Mittente AMQP, se non esiste già.

  • Per inviare messaggi a un session e/o partition abilitata coda/argomento, impostare rispettivamente le proprietà sessionId e/o partitionKey sui messaggi.
  • Tutti i messaggi passati alla stessa chiamata sendMessages() devono avere lo stesso sessionId (se si usano sessioni) e lo stesso partitionKey (se si usano partizioni).

Nota:

Se si desidera inviare messaggi di dimensioni maggiori di 1 MB, inviare singoli messaggi invece di inviare un messaggio in batch o una matrice di messaggi come indicato di seguito.

await sender.sendMessages(message);

Ciò è dovuto al fatto che i messaggi in batch non sono ancora in grado di inviare i messaggi più grandi. In questo caso verrà visualizzato l'errore force detached. Leggere service-bus-premium-messaging#large-messages-support. Per altre informazioni, vedere #23014.

Dettagli proprietà

entityPath

Percorso dell'entità per cui è stato creato il mittente.

entityPath: string

Valore della proprietà

string

identifier

Nome utilizzato per identificare il mittente. Può essere usato per correlare log ed eccezioni. Se non specificato o vuoto, verrà generato un valore univoco casuale.

identifier: string

Valore della proprietà

string

isClosed

Restituisce true se il mittente o il client che lo ha creato è stato chiuso.

isClosed: boolean

Valore della proprietà

boolean

Dettagli metodo

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Annulla più messaggi pianificati per essere visualizzati in una coda o una sottoscrizione del bus di servizio.

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

Parametri

sequenceNumbers

Long | Long[]

Numero di sequenza o matrice di numeri di sequenza dei messaggi da annullare.

options
OperationOptionsBase

Contenitore opzioni per passare un segnale di interruzione o opzioni di traccia.

Restituisce

Promise<void>

close()

Chiude il collegamento del mittente AMQP sottostante. Una volta chiuso, il mittente non può essere usato per ulteriori operazioni. Usare la funzione createSender in QueueClient o TopicClient per creare un'istanza di un nuovo mittente

function close(): Promise<void>

Restituisce

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

Crea un'istanza di ServiceBusMessageBatch a cui è possibile aggiungere messaggi finché non viene raggiunta la dimensione massima supportata. Il batch può essere passato al metodo <xref:send> per inviare i messaggi al bus di servizio di Azure.

function createMessageBatch(options?: CreateMessageBatchOptions): Promise<ServiceBusMessageBatch>

Parametri

options
CreateMessageBatchOptions

Configura il comportamento del batch.

  • maxSizeInBytes: limite superiore per le dimensioni del batch. La funzione tryAdd restituirà false dopo il raggiungimento di questo limite.

Restituisce

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

Pianifica i messaggi specificati da visualizzare nella coda o nella sottoscrizione del bus di servizio in un secondo momento.

function scheduleMessages(messages: ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], scheduledEnqueueTimeUtc: Date, options?: OperationOptionsBase): Promise<Long[]>

Parametri

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Messaggio o matrice di messaggi che devono essere pianificati.

scheduledEnqueueTimeUtc

Date

Ora UTC in cui devono essere accodati i messaggi.

options
OperationOptionsBase

Contenitore opzioni per passare un segnale di interruzione o opzioni di traccia.

Restituisce

Promise<Long[]>

Numeri di sequenza di messaggi pianificati. Se si intende annullare la pianificazione dei messaggi, sarà necessario il numero di sequenza. Salvare il tipo di Long as-is nell'applicazione senza convertire in numero. Poiché JavaScript supporta solo numeri a 53 bit, la conversione del Long in numero causerà una perdita di precisione.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

Invia i messaggi specificati dopo la creazione di un collegamento Mittente AMQP, se non esiste già.

  • Per inviare messaggi a un session e/o partition abilitata coda/argomento, impostare rispettivamente le proprietà sessionId e/o partitionKey sui messaggi.
  • Tutti i messaggi passati alla stessa chiamata sendMessages() devono avere lo stesso sessionId (se si usano sessioni) e lo stesso partitionKey (se si usano partizioni).

Nota:

Se si desidera inviare messaggi di dimensioni maggiori di 1 MB, inviare singoli messaggi invece di inviare un messaggio in batch o una matrice di messaggi come indicato di seguito.

await sender.sendMessages(message);

Ciò è dovuto al fatto che i messaggi in batch non sono ancora in grado di inviare i messaggi più grandi. In questo caso verrà visualizzato l'errore force detached. Leggere service-bus-premium-messaging#large-messages-support. Per altre informazioni, vedere #23014.

function sendMessages(messages: ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], options?: OperationOptionsBase): Promise<void>

Parametri

messages

ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Un singolo messaggio o una matrice di messaggi o un batch di messaggi creati tramite il metodo createBatch() da inviare.

options
OperationOptionsBase

Contenitore opzioni per passare un segnale di interruzione o opzioni di traccia.

Restituisce

Promise<void>