Package version:

A QueueClient represents a URL to an Azure Storage Queue's messages allowing you to manipulate its messages.

Hierarchy

  • StorageClient
    • QueueClient

Constructors

  • Creates an instance of QueueClient.

    Parameters

    • connectionString: string

      Account connection string or a SAS connection string of an Azure storage account. [ Note - Account connection string can only be used in NODE.JS runtime. ] Account connection string example - DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net SAS connection string example - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

    • queueName: string

      Queue name.

    • Optionaloptions: StoragePipelineOptions

      Options to configure the HTTP pipeline.

    Returns QueueClient

  • Creates an instance of QueueClient.

    Parameters

    Returns QueueClient

  • Creates an instance of QueueClient.

    Parameters

    Returns QueueClient

Properties

accountName: string
storageClientContext: StorageClient

StorageClientContext is a reference to protocol layer operations entry, which is generated by AutoRest generator.

url: string

URL string value.

Accessors

Methods

  • Creates a new queue under the specified account.

    Parameters

    Returns Promise<QueueCreateResponse>

    Response data for the Queue create operation.

    Example usage:

    import { QueueServiceClient } from "@azure/storage-queue";
    import { DefaultAzureCredential } from "@azure/identity";

    const account = "<account>";
    const queueServiceClient = new QueueServiceClient(
    `https://${account}.queue.core.windows.net`,
    new DefaultAzureCredential(),
    );

    const queueName = "<valid queue name>";
    const queueClient = queueServiceClient.getQueueClient(queueName);
    const createQueueResponse = await queueClient.create();
    console.log(
    `Created queue ${queueName} successfully, service assigned request Id: ${createQueueResponse.requestId}`,
    );
  • Deletes the specified queue permanently.

    Parameters

    Returns Promise<QueueDeleteResponse>

    Response data for the Queue delete operation.

    Example usage:

    import { QueueServiceClient } from "@azure/storage-queue";
    import { DefaultAzureCredential } from "@azure/identity";

    const account = "<account>";
    const queueServiceClient = new QueueServiceClient(
    `https://${account}.queue.core.windows.net`,
    new DefaultAzureCredential(),
    );

    const queueName = "<valid queue name>";
    const queueClient = queueServiceClient.getQueueClient(queueName);
    const deleteQueueResponse = await queueClient.delete();
    console.log(
    `Deleted queue successfully, service assigned request Id: ${deleteQueueResponse.requestId}`,
    );
  • Returns true if the specified queue exists; false otherwise.

    NOTE: use this function with care since an existing queue might be deleted by other clients or applications. Vice versa new queues might be added by other clients or applications after this function completes.

    Parameters

    Returns Promise<boolean>

  • peekMessages retrieves one or more messages from the front of the queue but does not alter the visibility of the message.

    Parameters

    Returns Promise<QueuePeekMessagesResponse>

    Response data for the peek messages operation.

    Example usage:

    import { QueueServiceClient } from "@azure/storage-queue";
    import { DefaultAzureCredential } from "@azure/identity";

    const account = "<account>";
    const queueServiceClient = new QueueServiceClient(
    `https://${account}.queue.core.windows.net`,
    new DefaultAzureCredential(),
    );

    const queueName = "<valid queue name>";
    const queueClient = queueServiceClient.getQueueClient(queueName);
    const peekMessagesResponse = await queueClient.peekMessages();
    console.log(`The peeked message is: ${peekMessagesResponse.peekedMessageItems[0].messageText}`);
  • receiveMessages retrieves one or more messages from the front of the queue.

    Parameters

    Returns Promise<QueueReceiveMessageResponse>

    Response data for the receive messages operation.

    Example usage:

    import { QueueServiceClient } from "@azure/storage-queue";
    import { DefaultAzureCredential } from "@azure/identity";

    const account = "<account>";
    const queueServiceClient = new QueueServiceClient(
    `https://${account}.queue.core.windows.net`,
    new DefaultAzureCredential(),
    );

    const queueName = "<valid queue name>";
    const queueClient = queueServiceClient.getQueueClient(queueName);
    const response = await queueClient.receiveMessages();
    if (response.receivedMessageItems.length === 1) {
    const receivedMessageItem = response.receivedMessageItems[0];
    console.log(`Processing & deleting message with content: ${receivedMessageItem.messageText}`);
    const deleteMessageResponse = await queueClient.deleteMessage(
    receivedMessageItem.messageId,
    receivedMessageItem.popReceipt,
    );
    console.log(
    `Delete message successfully, service assigned request Id: ${deleteMessageResponse.requestId}`,
    );
    }
  • sendMessage adds a new message to the back of a queue. The visibility timeout specifies how long the message should be invisible to Dequeue and Peek operations. The message content is up to 64KB in size, and must be in a format that can be included in an XML request with UTF-8 encoding. To include markup in the message, the contents of the message must either be XML-escaped or Base64-encode.

    Parameters

    • messageText: string

      Text of the message to send

    • options: QueueSendMessageOptions = {}

      Options to send messages operation.

    Returns Promise<QueueSendMessageResponse>

    Response data for the send messages operation.

    Example usage:

    import { QueueServiceClient } from "@azure/storage-queue";
    import { DefaultAzureCredential } from "@azure/identity";

    const account = "<account>";
    const queueServiceClient = new QueueServiceClient(
    `https://${account}.queue.core.windows.net`,
    new DefaultAzureCredential(),
    );

    const queueName = "<valid queue name>";
    const queueClient = queueServiceClient.getQueueClient(queueName);
    // Send a message into the queue using the sendMessage method.
    const sendMessageResponse = await queueClient.sendMessage("Hello World!");
    console.log(
    `Sent message successfully, service assigned message Id: ${sendMessageResponse.messageId}, service assigned request Id: ${sendMessageResponse.requestId}`,
    );
  • Update changes a message's visibility timeout and contents. The message content is up to 64KB in size, and must be in a format that can be included in an XML request with UTF-8 encoding. To include markup in the message, the contents of the message must either be XML-escaped or Base64-encode.

    Parameters

    • messageId: string

      Id of the message

    • popReceipt: string

      A valid pop receipt value returned from an earlier call to the receive messages or update message operation.

    • Optionalmessage: string

      Message to update. If this parameter is undefined, then the content of the message won't be updated.

    • OptionalvisibilityTimeout: number

      Specifies the new visibility timeout value, in seconds, relative to server time. The new value must be larger than or equal to 0, and cannot be larger than 7 days. The visibility timeout of a message cannot be set to a value later than the expiry time. A message can be updated until it has been deleted or has expired.

    • options: QueueUpdateMessageOptions = {}

      Options to update message operation.

    Returns Promise<MessageIdUpdateResponse>

    Response data for the update message operation.