Options
All
  • Public
  • Public/Protected
  • All
Menu

Class BlobServiceClient

Package version

A BlobServiceClient represents a Client to the Azure Storage Blob service allowing you to manipulate blob containers.

export

Hierarchy

  • StorageClient
    • BlobServiceClient

Index

Constructors

constructor

  • Creates an instance of BlobServiceClient.

    memberof

    BlobServiceClient

    Example using DefaultAzureCredential from @azure/identity:

    const account = "<storage account name>";
    
    const defaultAzureCredential = new DefaultAzureCredential();
    
    const blobServiceClient = new BlobServiceClient(
      `https://${account}.blob.core.windows.net`,
      defaultAzureCredential
    );

    Example using an account name/key:

    const account = "<storage account name>"
    const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");
    
    const blobServiceClient = new BlobServiceClient(
      `https://${account}.blob.core.windows.net`,
      sharedKeyCredential
    );

    Parameters

    Returns BlobServiceClient

  • Creates an instance of BlobServiceClient.

    memberof

    BlobServiceClient

    Parameters

    Returns BlobServiceClient

Properties

accountName

accountName: string

credential

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the @azure/identity package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.

memberof

StorageClient

Protected isHttps

isHttps: boolean
memberof

StorageClient

Protected storageClientContext

storageClientContext: StorageClientContext

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

memberof

StorageClient

url

url: string

Encoded URL string value.

memberof

StorageClient

Methods

createContainer

deleteContainer

findBlobsByTags

  • Returns an async iterable iterator to find all blobs with specified tag under the specified account.

    .byPage() returns an async iterable iterator to list the blobs in pages.

    see

    https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties

    Example using for await syntax:

    let i = 1;
    for await (const blob of blobServiceClient.findBlobsByTags("tagkey='tagvalue'")) {
      console.log(`Blob ${i++}: ${container.name}`);
    }

    Example using iter.next():

    let i = 1;
    const iter = blobServiceClient.findBlobsByTags("tagkey='tagvalue'");
    let blobItem = await iter.next();
    while (!blobItem.done) {
      console.log(`Blob ${i++}: ${blobItem.value.name}`);
      blobItem = await iter.next();
    }

    Example using byPage():

    // passing optional maxPageSize in the page settings
    let i = 1;
    for await (const response of blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
      if (response.blobs) {
        for (const blob of response.blobs) {
          console.log(`Blob ${i++}: ${blob.name}`);
        }
      }
    }

    Example using paging with a marker:

    let i = 1;
    let iterator = blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
    let response = (await iterator.next()).value;
    
    // Prints 2 blob names
    if (response.blobs) {
      for (const blob of response.blobs) {
        console.log(`Blob ${i++}: ${blob.name}`);
      }
    }
    
    // Gets next marker
    let marker = response.continuationToken;
    // Passing next marker as continuationToken
    iterator = blobServiceClient
      .findBlobsByTags("tagkey='tagvalue'")
      .byPage({ continuationToken: marker, maxPageSize: 10 });
    response = (await iterator.next()).value;
    
    // Prints blob names
    if (response.blobs) {
      for (const blob of response.blobs) {
         console.log(`Blob ${i++}: ${blob.name}`);
      }
    }
    memberof

    BlobServiceClient

    Parameters

    • tagFilterSqlExpression: string

      The where parameter enables the caller to query blobs whose tags match a given expression. The given expression must evaluate to true for a blob to be returned in the results. The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter; however, only a subset of the OData filter syntax is supported in the Blob service.

    • Default value options: ServiceFindBlobByTagsOptions = {}

    Returns PagedAsyncIterableIterator<FilterBlobItem, ServiceFindBlobsByTagsSegmentResponse>

generateAccountSasUrl

  • Only available for BlobServiceClient constructed with a shared key credential.

    Generates a Blob account Shared Access Signature (SAS) URI based on the client properties and parameters passed in. The SAS is signed by the shared key credential of the client.

    see

    https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

    memberof

    BlobServiceClient

    Parameters

    • Optional expiresOn: Date

      Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not provided.

    • Default value permissions: AccountSASPermissions = AccountSASPermissions.parse("r")
    • Default value resourceTypes: string = "sco"
    • Default value options: ServiceGenerateAccountSasUrlOptions = {}

    Returns string

    An account SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.

getAccountInfo

getBlobBatchClient

getContainerClient

getProperties

getStatistics

getUserDelegationKey

listContainers

  • Returns an async iterable iterator to list all the containers under the specified account.

    .byPage() returns an async iterable iterator to list the containers in pages.

    Example using for await syntax:

    let i = 1;
    for await (const container of blobServiceClient.listContainers()) {
      console.log(`Container ${i++}: ${container.name}`);
    }

    Example using iter.next():

    let i = 1;
    const iter = blobServiceClient.listContainers();
    let containerItem = await iter.next();
    while (!containerItem.done) {
      console.log(`Container ${i++}: ${containerItem.value.name}`);
      containerItem = await iter.next();
    }

    Example using byPage():

    // passing optional maxPageSize in the page settings
    let i = 1;
    for await (const response of blobServiceClient.listContainers().byPage({ maxPageSize: 20 })) {
      if (response.containerItems) {
        for (const container of response.containerItems) {
          console.log(`Container ${i++}: ${container.name}`);
        }
      }
    }

    Example using paging with a marker:

    let i = 1;
    let iterator = blobServiceClient.listContainers().byPage({ maxPageSize: 2 });
    let response = (await iterator.next()).value;
    
    // Prints 2 container names
    if (response.containerItems) {
      for (const container of response.containerItems) {
        console.log(`Container ${i++}: ${container.name}`);
      }
    }
    
    // Gets next marker
    let marker = response.continuationToken;
    // Passing next marker as continuationToken
    iterator = blobServiceClient
      .listContainers()
      .byPage({ continuationToken: marker, maxPageSize: 10 });
    response = (await iterator.next()).value;
    
    // Prints 10 container names
    if (response.containerItems) {
      for (const container of response.containerItems) {
         console.log(`Container ${i++}: ${container.name}`);
      }
    }
    memberof

    BlobServiceClient

    Parameters

    Returns PagedAsyncIterableIterator<ContainerItem, ServiceListContainersSegmentResponse>

    An asyncIterableIterator that supports paging.

setProperties

undeleteContainer

  • Restore a previously deleted Blob container. This API is only functional if Container Soft Delete is enabled for the storage account associated with the container.

    memberof

    BlobServiceClient

    Parameters

    • deletedContainerName: string

      Name of the previously deleted container.

    • deletedContainerVersion: string

      Version of the previously deleted container, used to uniquely identify the deleted container.

    • Default value options: ServiceUndeleteContainerOptions = {}

    Returns Promise<{ containerClient: ContainerClient; containerUndeleteResponse: ContainerUndeleteResponse }>

    Container deletion response.

Static fromConnectionString

  • Creates an instance of BlobServiceClient from connection string.

    memberof

    BlobServiceClient

    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

    • Optional options: StoragePipelineOptions

    Returns BlobServiceClient

Generated using TypeDoc