Freigeben über


ServiceBusSender interface

Ein Absender kann verwendet werden, um Nachrichten zu senden, zu einem späteren Zeitpunkt zu planen und solche geplanten Nachrichten abzubrechen. Verwenden Sie die createSender Funktion im ServiceBusClient, um einen Absender zu instanziieren. Die Sender-Klasse ist eine Abstraktion über den zugrunde liegenden AMQP-Absenderlink.

Eigenschaften

entityPath

Pfad der Entität, für die der Absender erstellt wurde.

identifier

Ein Name, der zur Identifizierung des Absenders verwendet wird. Dies kann verwendet werden, um Protokolle und Ausnahmen zu korrelieren. Wenn nicht angegeben oder leer, wird ein zufälliges eindeutiges generiert.

isClosed

Gibt zurück true , wenn entweder der Absender oder der Client, von dem er erstellt wurde, geschlossen wurde.

Methoden

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Bricht mehrere Nachrichten ab, die in einer ServiceBus-Warteschlange/einem Abonnement angezeigt werden sollen.

close()

Schließt den zugrunde liegenden AMQP-Absenderlink. Nach dem Schließen kann der Absender nicht mehr für weitere Vorgänge verwendet werden. Verwenden Sie die createSender Funktion im QueueClient oder TopicClient, um einen neuen Absender zu instanziieren.

createMessageBatch(CreateMessageBatchOptions)

Erstellt eine Instanz von ServiceBusMessageBatch , der Nachrichten hinzugefügt werden können, bis die maximale unterstützte Größe erreicht ist. Der Batch kann an die <xref:send> -Methode übergeben werden, um die Nachrichten an Azure Service Bus zu senden.

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

Die angegebenen Nachrichten werden zu einem späteren Zeitpunkt in der Service Bus-Warteschlange/im Abonnement angezeigt.

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

Sendet die angegebenen Nachrichten nach dem Erstellen eines AMQP-Absenderlinks, sofern er noch nicht vorhanden ist.

  • Um Nachrichten an eine und/oder partition eine aktivierte Warteschlange/ein session Thema zu senden, legen Sie die sessionId Eigenschaften und/oder partitionKey für die Nachrichten fest.
  • Alle Nachrichten, die an denselben sendMessages()-Aufruf übergeben werden, sollten dieselbe sessionId (bei Verwendung von Sitzungen) und dieselbe partitionKey (bei Verwendung von Partitionen) aufweisen.

Hinweis:

Wenn Sie Nachrichten mit einer Größe von mehr als 1 MB senden möchten, senden Sie bitte einzelne Nachrichten, anstatt eine Batchnachricht oder ein Array von Nachrichten wie unten zu senden.

await sender.sendMessages(message);

Dies liegt daran, dass die Batchnachrichten noch nicht in der Lage sind, die größeren Nachrichten zu senden. Andernfalls tritt der force detached Fehler in diesem Fall auf. Lesen Sie service-bus-premium-messaging#large-messages-support. Weitere Informationen finden Sie unter #23014.

Details zur Eigenschaft

entityPath

Pfad der Entität, für die der Absender erstellt wurde.

entityPath: string

Eigenschaftswert

string

identifier

Ein Name, der zur Identifizierung des Absenders verwendet wird. Dies kann verwendet werden, um Protokolle und Ausnahmen zu korrelieren. Wenn nicht angegeben oder leer, wird ein zufälliges eindeutiges generiert.

identifier: string

Eigenschaftswert

string

isClosed

Gibt zurück true , wenn entweder der Absender oder der Client, von dem er erstellt wurde, geschlossen wurde.

isClosed: boolean

Eigenschaftswert

boolean

Details zur Methode

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Bricht mehrere Nachrichten ab, die in einer ServiceBus-Warteschlange/einem Abonnement angezeigt werden sollen.

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

Parameter

sequenceNumbers

Long | Long[]

Sequenznummer oder ein Array von Sequenznummern der nachrichten, die abgebrochen werden sollen.

options
OperationOptionsBase

Optionsbeutel, um ein Abbruchsignal oder Ablaufverfolgungsoptionen zu übergeben.

Gibt zurück

Promise<void>

close()

Schließt den zugrunde liegenden AMQP-Absenderlink. Nach dem Schließen kann der Absender nicht mehr für weitere Vorgänge verwendet werden. Verwenden Sie die createSender Funktion im QueueClient oder TopicClient, um einen neuen Absender zu instanziieren.

function close(): Promise<void>

Gibt zurück

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

Erstellt eine Instanz von ServiceBusMessageBatch , der Nachrichten hinzugefügt werden können, bis die maximale unterstützte Größe erreicht ist. Der Batch kann an die <xref:send> -Methode übergeben werden, um die Nachrichten an Azure Service Bus zu senden.

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

Parameter

options
CreateMessageBatchOptions

Konfiguriert das Verhalten des Batches.

  • maxSizeInBytes: Die Obergrenze für die Batchgröße. Die tryAdd Funktion wird zurückgegeben, false nachdem dieser Grenzwert erreicht wurde.

Gibt zurück

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

Die angegebenen Nachrichten werden zu einem späteren Zeitpunkt in der Service Bus-Warteschlange/im Abonnement angezeigt.

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

Parameter

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Nachricht oder ein Array von Nachrichten, die geplant werden müssen.

scheduledEnqueueTimeUtc

Date

Die UTC-Zeit, zu der die Nachrichten in Warteschlange gestellt werden sollen.

options
OperationOptionsBase

Optionsbeutel, um ein Abbruchsignal oder Ablaufverfolgungsoptionen zu übergeben.

Gibt zurück

Promise<Long[]>

Die Sequenznummern der geplanten Nachrichten. Sie benötigen die Sequenznummer, wenn Sie die Planung der Nachrichten abbrechen möchten. Speichern Sie den Long Typ unverändert in Ihrer Anwendung, ohne in Zahlen zu konvertieren. Da JavaScript nur 53-Bit-Zahlen unterstützt, führt die Konvertierung in zahl Long zu Einem Genauigkeitsverlust.

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

Sendet die angegebenen Nachrichten nach dem Erstellen eines AMQP-Absenderlinks, sofern er noch nicht vorhanden ist.

  • Um Nachrichten an eine und/oder partition eine aktivierte Warteschlange/ein session Thema zu senden, legen Sie die sessionId Eigenschaften und/oder partitionKey für die Nachrichten fest.
  • Alle Nachrichten, die an denselben sendMessages()-Aufruf übergeben werden, sollten dieselbe sessionId (bei Verwendung von Sitzungen) und dieselbe partitionKey (bei Verwendung von Partitionen) aufweisen.

Hinweis:

Wenn Sie Nachrichten mit einer Größe von mehr als 1 MB senden möchten, senden Sie bitte einzelne Nachrichten, anstatt eine Batchnachricht oder ein Array von Nachrichten wie unten zu senden.

await sender.sendMessages(message);

Dies liegt daran, dass die Batchnachrichten noch nicht in der Lage sind, die größeren Nachrichten zu senden. Andernfalls tritt der force detached Fehler in diesem Fall auf. Lesen Sie service-bus-premium-messaging#large-messages-support. Weitere Informationen finden Sie unter #23014.

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

Parameter

messages

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

Eine einzelne Nachricht oder ein Array von Nachrichten oder ein Batch von Nachrichten, die mit der createBatch()-Methode erstellt wurden, um zu senden.

options
OperationOptionsBase

Optionsbeutel, um ein Abbruchsignal oder Ablaufverfolgungsoptionen zu übergeben.

Gibt zurück

Promise<void>