Dela via


ServiceBusSender interface

En avsändare kan användas för att skicka meddelanden, schemalägga meddelanden som ska skickas vid ett senare tillfälle och avbryta sådana schemalagda meddelanden. Använd funktionen createSender på ServiceBusClient för att instansiera en avsändare. Klassen Sender är en abstraktion över den underliggande AMQP-avsändarlänken.

Egenskaper

entityPath

Sökväg till den entitet som avsändaren har skapats för.

identifier

Ett namn som används för att identifiera avsändaren. Detta kan användas för att korrelera loggar och undantag. Om det inte anges eller är tomt genereras en slumpmässig unik.

isClosed

Returnerar true om avsändaren eller klienten som skapade den har stängts.

Metoder

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Avbryter flera meddelanden som har schemalagts för att visas i en ServiceBus-kö/prenumeration.

close()

Stänger den underliggande AMQP-avsändarlänken. När den har stängts kan avsändaren inte användas för ytterligare åtgärder. Använd funktionen createSender i QueueClient eller TopicClient för att instansiera en ny avsändare

createMessageBatch(CreateMessageBatchOptions)

Skapar en instans av ServiceBusMessageBatch som man kan lägga till meddelanden tills den maximala storleken som stöds har nåtts. Batchen kan skickas till metoden <xref:send> för att skicka meddelanden till Azure Service Bus.

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

Schemalägger meddelanden som ska visas i Service Bus-kö/prenumeration vid ett senare tillfälle.

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

Skickar de angivna meddelandena när du har skapat en AMQP-avsändarlänk om den inte redan finns.

  • Om du vill skicka meddelanden till en session och/eller partition aktiverad kö/ämne anger du egenskaperna sessionId respektive partitionKey på meddelandena.
  • Alla meddelanden som skickas till samma sendMessages()-anrop ska ha samma sessionId (om du använder sessioner) och samma partitionKey (om du använder partitioner).

Obs!

Om du vill skicka meddelanden med större storlek än 1 MB skickar du enskilda meddelanden i stället för att skicka ett batchmeddelande eller en matris med meddelanden som nedan.

await sender.sendMessages(message);

Detta beror på att de batchbaserade meddelandena inte kan skicka de större meddelandena ännu. Annars stöter du på felet force detached i det här fallet. Läs service-bus-premium-messaging#large-messages-support. Mer information finns på #23014.

Egenskapsinformation

entityPath

Sökväg till den entitet som avsändaren har skapats för.

entityPath: string

Egenskapsvärde

string

identifier

Ett namn som används för att identifiera avsändaren. Detta kan användas för att korrelera loggar och undantag. Om det inte anges eller är tomt genereras en slumpmässig unik.

identifier: string

Egenskapsvärde

string

isClosed

Returnerar true om avsändaren eller klienten som skapade den har stängts.

isClosed: boolean

Egenskapsvärde

boolean

Metodinformation

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Avbryter flera meddelanden som har schemalagts för att visas i en ServiceBus-kö/prenumeration.

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

Parametrar

sequenceNumbers

Long | Long[]

Sekvensnummer eller en matris med sekvensnummer för de meddelanden som ska avbrytas.

options
OperationOptionsBase

Alternativ påse för att skicka en avbruten signal eller spårningsalternativ.

Returer

Promise<void>

close()

Stänger den underliggande AMQP-avsändarlänken. När den har stängts kan avsändaren inte användas för ytterligare åtgärder. Använd funktionen createSender i QueueClient eller TopicClient för att instansiera en ny avsändare

function close(): Promise<void>

Returer

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

Skapar en instans av ServiceBusMessageBatch som man kan lägga till meddelanden tills den maximala storleken som stöds har nåtts. Batchen kan skickas till metoden <xref:send> för att skicka meddelanden till Azure Service Bus.

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

Parametrar

options
CreateMessageBatchOptions

Konfigurerar batchens beteende.

  • maxSizeInBytes: Den övre gränsen för batchstorleken. Funktionen tryAdd returnerar false när den här gränsen har nåtts.

Returer

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

Schemalägger meddelanden som ska visas i Service Bus-kö/prenumeration vid ett senare tillfälle.

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

Parametrar

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Meddelande eller en matris med meddelanden som måste schemaläggas.

scheduledEnqueueTimeUtc

Date

DEN UTC-tid då meddelandena ska anges.

options
OperationOptionsBase

Alternativ påse för att skicka en avbruten signal eller spårningsalternativ.

Returer

Promise<Long[]>

Sekvensnummer för meddelanden som schemalagts. Du behöver sekvensnumret om du tänker avbryta schemaläggningen av meddelandena. Spara Long typ as-is i programmet utan att konvertera till tal. Eftersom JavaScript endast stöder 53-bitars tal orsakar konvertering av Long till tal förlust i precision.

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

Skickar de angivna meddelandena när du har skapat en AMQP-avsändarlänk om den inte redan finns.

  • Om du vill skicka meddelanden till en session och/eller partition aktiverad kö/ämne anger du egenskaperna sessionId respektive partitionKey på meddelandena.
  • Alla meddelanden som skickas till samma sendMessages()-anrop ska ha samma sessionId (om du använder sessioner) och samma partitionKey (om du använder partitioner).

Obs!

Om du vill skicka meddelanden med större storlek än 1 MB skickar du enskilda meddelanden i stället för att skicka ett batchmeddelande eller en matris med meddelanden som nedan.

await sender.sendMessages(message);

Detta beror på att de batchbaserade meddelandena inte kan skicka de större meddelandena ännu. Annars stöter du på felet force detached i det här fallet. Läs service-bus-premium-messaging#large-messages-support. Mer information finns på #23014.

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

Parametrar

messages

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

Ett enda meddelande eller en matris med meddelanden eller en batch med meddelanden som skapas via metoden createBatch() som ska skickas.

options
OperationOptionsBase

Alternativ påse för att skicka en avbruten signal eller spårningsalternativ.

Returer

Promise<void>