次の方法で共有


ServiceBusSender interface

Sender を使用すると、メッセージの送信、後で送信するメッセージのスケジュール設定、このようなスケジュールされたメッセージの取り消しを行うことができます。 createSender ServiceBusClient の 関数を使用して、Sender をインスタンス化します。 Sender クラスは、基になる AMQP 送信者リンクに対する抽象化です。

プロパティ

entityPath

送信者が作成されたエンティティのパス。

identifier

送信者を識別するために使用される名前。 これは、ログと例外を関連付けるために使用できます。 指定しない場合、または空の場合は、ランダムな一意のものが生成されます。

isClosed

true送信者または作成したクライアントのいずれかが閉じられている場合は を返します。

メソッド

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

ServiceBus キュー/サブスクリプションに表示されるようにスケジュールされた複数のメッセージを取り消します。

close()

基になる AMQP 送信者リンクを閉じます。 いったん閉じると、送信者はそれ以上の操作に使用できません。 createSender QueueClient または TopicClient の 関数を使用して、新しい Sender をインスタンス化する

createMessageBatch(CreateMessageBatchOptions)

サポートされている最大サイズに達するまでメッセージを追加できる のインスタンス ServiceBusMessageBatch を作成します。 バッチを メソッドに渡して、<xref:send>メッセージをAzure Service Busに送信できます。

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

指定されたメッセージを Service Bus キュー/サブスクリプションに後で表示するようにスケジュールします。

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

AMQP Sender リンクがまだ存在しない場合は、作成後に指定されたメッセージを送信します。

  • 有効なキュー/トピックまたは有効な session キュー/ partition トピックにメッセージを送信するには、メッセージに sessionId それぞれ プロパティまたは partitionKey プロパティを設定します。
  • 同じ sendMessages() 呼び出しに渡されるすべてのメッセージは、同じ (セッションを使用している場合) と同じ sessionIdpartitionKey (パーティションを使用している場合) である必要があります。

注:

サイズが 1 MB を超えるメッセージを送信する場合は、バッチメッセージや以下のようなメッセージの配列を送信するのではなく、個々のメッセージを送信してください。

await sender.sendMessages(message);

これは、バッチ処理されたメッセージが大きなメッセージをまだ送信できないためです。 それ以外の場合は、 force detached この場合にエラーが発生します。 service-bus-premium-messaging#large-messages-support を読み取る。 詳細については、 #23014 を参照してください。

プロパティの詳細

entityPath

送信者が作成されたエンティティのパス。

entityPath: string

プロパティ値

string

identifier

送信者を識別するために使用される名前。 これは、ログと例外を関連付けるために使用できます。 指定しない場合、または空の場合は、ランダムな一意のものが生成されます。

identifier: string

プロパティ値

string

isClosed

true送信者または作成したクライアントのいずれかが閉じられている場合は を返します。

isClosed: boolean

プロパティ値

boolean

メソッドの詳細

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

ServiceBus キュー/サブスクリプションに表示されるようにスケジュールされた複数のメッセージを取り消します。

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

パラメーター

sequenceNumbers

Long | Long[]

取り消すメッセージのシーケンス番号またはシーケンス番号の配列。

options
OperationOptionsBase

中止シグナルまたはトレース オプションを渡すオプション バッグ。

戻り値

Promise<void>

close()

基になる AMQP 送信者リンクを閉じます。 いったん閉じると、送信者はそれ以上の操作に使用できません。 createSender QueueClient または TopicClient の 関数を使用して、新しい Sender をインスタンス化する

function close(): Promise<void>

戻り値

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

サポートされている最大サイズに達するまでメッセージを追加できる のインスタンス ServiceBusMessageBatch を作成します。 バッチを メソッドに渡して、<xref:send>メッセージをAzure Service Busに送信できます。

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

パラメーター

options
CreateMessageBatchOptions

バッチの動作を構成します。

  • maxSizeInBytes: バッチのサイズの上限。 この tryAdd 制限に達すると、関数は を返します false

戻り値

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

指定されたメッセージを Service Bus キュー/サブスクリプションに後で表示するようにスケジュールします。

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

パラメーター

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

スケジュールする必要があるメッセージまたはメッセージの配列。

scheduledEnqueueTimeUtc

Date

メッセージをエンキューする UTC 時刻。

options
OperationOptionsBase

中止シグナルまたはトレース オプションを渡すオプション バッグ。

戻り値

Promise<Long[]>

スケジュールされたメッセージのシーケンス番号。 メッセージのスケジュール設定を取り消す場合は、シーケンス番号が必要です。 型を Long 数値に変換せずに、アプリケーションにそのまま保存します。 JavaScript では 53 ビット数値のみがサポートされるため、 を 数値に変換 Long すると精度が低下します。

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

AMQP Sender リンクがまだ存在しない場合は、作成後に指定されたメッセージを送信します。

  • 有効なキュー/トピックまたは有効な session キュー/ partition トピックにメッセージを送信するには、メッセージに sessionId それぞれ プロパティまたは partitionKey プロパティを設定します。
  • 同じ sendMessages() 呼び出しに渡されるすべてのメッセージは、同じ (セッションを使用している場合) と同じ sessionIdpartitionKey (パーティションを使用している場合) である必要があります。

注:

サイズが 1 MB を超えるメッセージを送信する場合は、バッチメッセージや以下のようなメッセージの配列を送信するのではなく、個々のメッセージを送信してください。

await sender.sendMessages(message);

これは、バッチ処理されたメッセージが大きなメッセージをまだ送信できないためです。 それ以外の場合は、 force detached この場合にエラーが発生します。 service-bus-premium-messaging#large-messages-support を読み取る。 詳細については、 #23014 を参照してください。

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

パラメーター

messages

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

送信する createBatch() メソッドを使用して作成された 1 つのメッセージまたはメッセージの配列、またはメッセージのバッチ。

options
OperationOptionsBase

中止シグナルまたはトレース オプションを渡すオプション バッグ。

戻り値

Promise<void>