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 createSender funzione in ServiceBusClient per creare un'istanza di un mittente. La classe Sender è un'astrazione sul collegamento mittente AMQP sottostante.

Proprietà

entityPath

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

identifier

Nome utilizzato per identificare il mittente. Questa operazione può essere usata per correlare i log e le eccezioni. Se non specificato o vuoto, verrà generato un univoco casuale.

isClosed

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

Metodi

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Annulla più messaggi pianificati da visualizzare in una coda/sottoscrizione servicebus.

close()

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

createMessageBatch(CreateMessageBatchOptions)

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

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

Pianifica i messaggi specificati da visualizzare nella coda/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 una session coda/argomento abilitata e/o partition abilitata, impostare rispettivamente le sessionId proprietà 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 superiori a 1 MB, inviare singoli messaggi anziché inviare un messaggio in batch o una matrice di messaggi come indicato di seguito.

await sender.sendMessages(message);

Questo perché 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. Altre informazioni a #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. Questa operazione può essere usata per correlare i log e le eccezioni. Se non specificato o vuoto, verrà generato un univoco casuale.

identifier: string

Valore della proprietà

string

isClosed

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

isClosed: boolean

Valore della proprietà

boolean

Dettagli metodo

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Annulla più messaggi pianificati da visualizzare in una coda/sottoscrizione servicebus.

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

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

Restituisce

Promise<void>

close()

Chiude il collegamento mittente AMQP sottostante. Una volta chiuso, il mittente non può essere usato per altre operazioni. Usare la createSender funzione 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 fino a quando non viene raggiunta la dimensione massima supportata. Il batch può essere passato al <xref:send> metodo per inviare i messaggi a 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 tryAdd funzione restituirà false dopo aver raggiunto questo limite.

Restituisce

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

Pianifica i messaggi specificati da visualizzare nella coda/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 i messaggi devono essere accodati.

options
OperationOptionsBase

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

Restituisce

Promise<Long[]>

Numero di sequenza di messaggi pianificati. È necessario il numero di sequenza se si intende annullare la pianificazione dei messaggi. Salvare il Long tipo come è presente nell'applicazione senza convertire il numero. Poiché JavaScript supporta solo numeri a 53 bit, la conversione del Long numero in numero causerà la 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 una session coda/argomento abilitata e/o partition abilitata, impostare rispettivamente le sessionId proprietà 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 superiori a 1 MB, inviare singoli messaggi anziché inviare un messaggio in batch o una matrice di messaggi come indicato di seguito.

await sender.sendMessages(message);

Questo perché 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. Altre informazioni a #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

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

Restituisce

Promise<void>