Azure Storage Blob client library samples for TypeScript

These sample programs show how to use the TypeScript client libraries for Azure Storage Blob in some common scenarios.

File Name Description
sharedKeyAuth.ts authenticate using an account name and a static key
azureAdAuth.ts authenticate with the storage service using Azure Active Directory
anonymousAuth.ts authenticate anonymously using a SAS-encoded URL
connectionStringAuth.ts authenticate with the storage service using a connection string
listBlobsByHierarchy.ts list blobs by hierarchy, using separators in the blob names, using options for paging, resuming paging, etc.
listBlobsFlat.ts list blobs in a container, showing options for paging, resuming paging, etc.
listContainers.ts list containers in an account, showing options for paging, resuming paging, etc.
snapshots.ts create and read from a blob snapshot
errorsAndResponses.ts explores various error scenarios and their response data
proxyAuth.ts configure proxy settings when connecting to the storage service
customizedClientHeaders.ts customize request headers such as X-Ms-Client-Request-Id using an HTTP policy
advancedRequestOptions.ts use advanced HTTP pipeline and request options for several methods
customPipeline.ts use custom HTTP pipeline options when connecting to the service

Prerequisites

The sample programs are compatible with LTS versions of Node.js.

Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the TypeScript documentation. Install the TypeScript compiler using:

npm install -g typescript

You need an Azure subscription and the following Azure resources to run these sample programs:

Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function.

Adapting the samples to run in the browser may require some additional consideration. For details, please see the package README.

Setup

To run the samples using the published version of the package:

  1. Install the dependencies using npm:
npm install
  1. Compile the samples:
npm run build
  1. Edit the file sample.env, adding the correct credentials to access the Azure service and run the samples. Then rename the file from sample.env to just .env. The sample programs will read this file automatically.

  2. Run whichever samples you like (note that some samples may require additional setup, see the table above):

node dist/sharedKeyAuth.js

Alternatively, run a single sample with the correct environment variables set (setting up the .env file is not required if you do this), for example (cross-platform):

npx dev-tool run vendored cross-env ACCOUNT_NAME="<account name>" ACCOUNT_KEY="<account key>" node dist/sharedKeyAuth.js

Next Steps

Take a look at our API Documentation for more information about the APIs that are available in the clients.