ContainerClient class

ContainerClient は、その BLOB を操作できる Azure Storage コンテナーへの URL を表します。

Extends

StorageClient

コンストラクター

ContainerClient(string, PipelineLike)

ContainerClient のインスタンスを作成します。 このメソッドは、コンテナーを指す URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされず、URL パス内の特殊文字のみがエスケープされます。 BLOB 名に が含まれている場合は ? または %、BLOB 名は URL でエンコードする必要があります。

ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

ContainerClient のインスタンスを作成します。 このメソッドは、コンテナーを指す URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされず、URL パス内の特殊文字のみがエスケープされます。 BLOB 名に が含まれている場合は ? または %、BLOB 名は URL でエンコードする必要があります。

ContainerClient(string, string, StoragePipelineOptions)

ContainerClient のインスタンスを作成します。

プロパティ

containerName

コンテナーの名前。

継承されたプロパティ

accountName
credential

AnonymousCredential、StorageSharedKeyCredential、またはサービスへの要求を @azure/identity 認証するためのパッケージからの資格情報など。 TokenCredential インターフェイスを実装する オブジェクトを指定することもできます。 指定しない場合は、AnonymousCredential が使用されます。

url

エンコードされた URL 文字列値。

メソッド

create(ContainerCreateOptions)

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、操作は失敗します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-container 名前付け規則:」を参照してください。 https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

createIfNotExists(ContainerCreateOptions)

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、変更されません。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-container 名前付け規則:」を参照してください。 https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

delete(ContainerDeleteMethodOptions)

指定したコンテナーに削除のマークを付けます。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container」を参照してください。

deleteBlob(string, ContainerDeleteBlobOptions)

指定した BLOB またはスナップショットに削除のマークを付けます。 BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 BLOB の削除操作を使用して、両方を同時に削除できます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob」を参照してください。

deleteIfExists(ContainerDeleteMethodOptions)

指定したコンテナーが存在する場合は、削除対象としてマークします。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container」を参照してください。

exists(ContainerExistsOptions)

このクライアントによって表される Azure コンテナー リソースが存在する場合は true を返します。それ以外の場合は false。

注: 既存のコンテナーは他のクライアントまたはアプリケーションによって削除される可能性があるため、この関数は注意して使用してください。 その逆も同様に、同じ名前の新しいコンテナーは、この関数の完了後に他のクライアントまたはアプリケーションによって追加される場合があります。

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

指定したコンテナーの下で、指定したタグを持つすべての BLOB を検索する非同期反復可能な反復子を返します。

.byPage() は、ページ内の BLOB を一覧表示する非同期反復可能反復子を返します。

構文の使用 for await 例:

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

iter.next() の使用例:

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

byPage() の使用例:

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

マーカーでページングを使用する例:

let i = 1;
let iterator = containerClient.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 = containerClient
  .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}`);
  }
}
generateSasUrl(ContainerGenerateSasUrlOptions)

共有キー資格情報を使用して構築された ContainerClient でのみ使用できます。

渡されたクライアントのプロパティとパラメーターに基づいて、BLOB Container Service Shared Access Signature (SAS) URI を生成します。 SAS は、クライアントの共有キー資格情報によって署名されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas」を参照してください。

getAccessPolicy(ContainerGetAccessPolicyOptions)

指定したコンテナーのアクセス許可を取得します。 アクセス許可は、コンテナー データがパブリックにアクセス可能かどうかを示します。

警告: startsOn 文字列と expiresOn 文字列を解析すると、JavaScript 日付の精度が失われる可能性があります。 たとえば、新しい Date("2018-12-31T03:44:23.8827891Z").toISOString() は "2018-12-31T03:44:23.882Z" を取得します。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl」を参照してください。

getAppendBlobClient(string)

AppendBlobClient を作成します

getBlobBatchClient()

バッチ操作を実行する BlobBatchClient オブジェクトを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch」を参照してください。

getBlobClient(string)

BlobClient を作成します

getBlobLeaseClient(string)

コンテナーのリースを管理する BlobLeaseClient を取得します。

getBlockBlobClient(string)

BlockBlobClient を作成します

getPageBlobClient(string)

PageBlobClient を作成します

getProperties(ContainerGetPropertiesOptions)

指定したコンテナーのすべてのユーザー定義メタデータとシステム プロパティを返します。 返されるデータにコンテナーの BLOB 一覧は含まれません。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties」を参照してください。

警告: 応答で返されるオブジェクトのキーは metadata 、最初に大文字が含まれていた場合でも小文字になります。 これは、 オプションを使用includeMetadataして BlobServiceClient メソッドによってlistContainers返されるメタデータ キーとは異なり、元の大文字と小文字が保持されます。

listBlobsByHierarchy(string, ContainerListBlobsOptions)

すべての BLOB を階層別に一覧表示する非同期反復可能反復子を返します。 指定したアカウントの下。

.byPage() は非同期反復可能な反復子を返し、階層別の BLOB をページで一覧表示します。

構文の使用 for await 例:

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
}

iter.next() の使用例:

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
  entity = await iter.next();
}

byPage() の使用例:

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}

最大ページ サイズでページングを使用する例:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient
  .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
  .byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}
listBlobsFlat(ContainerListBlobsOptions)

指定したアカウントのすべての BLOB を一覧表示する非同期反復可能反復子を返します。

.byPage() は、ページ内の BLOB を一覧表示する非同期反復可能反復子を返します。

構文の使用 for await 例:

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

iter.next() の使用例:

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

指定したコンテナーのアクセス許可を設定します。 アクセス許可は、コンテナー内の BLOB がパブリックにアクセス可能かどうかを示します。

コンテナーのアクセス許可を設定すると、既存のアクセス許可が置換されます。 アクセスまたは containerAcl が指定されていない場合は、既存のコンテナー ACL が削除されます。

コンテナーに格納されているアクセス ポリシーを確立すると、有効になるまでに最大 30 秒かかる場合があります。 その間、アクセス ポリシーがアクティブになるまでは、保存されているアクセス ポリシーに関連付けられている共有アクセス署名は、ステータス コード 403 (Forbidden) が返されて失敗します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl」を参照してください。

setMetadata(Metadata, ContainerSetMetadataOptions)

指定したコンテナーに対して 1 つ以上のユーザー定義の名前と値のペアを設定します。

オプションが指定されていない場合、または パラメーターにメタデータが定義されていない場合は、コンテナー メタデータが削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata」を参照してください。

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

新しいブロック BLOB を作成するか、既存のブロック BLOB のコンテンツを更新します。

既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新はサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、 stageBlock と commitBlockList を使用 します

これは非並列アップロード方法です。コンカレンシー アップロードのパフォーマンスを向上させるには、 uploadFileuploadStream 、または uploadBrowserData を使用してください。

https://docs.microsoft.com/rest/api/storageservices/put-blob」を参照してください。

コンストラクターの詳細

ContainerClient(string, PipelineLike)

ContainerClient のインスタンスを作成します。 このメソッドは、コンテナーを指す URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされず、URL パス内の特殊文字のみがエスケープされます。 BLOB 名に が含まれている場合は ? または %、BLOB 名は URL でエンコードする必要があります。

new ContainerClient(url: string, pipeline: PipelineLike)

パラメーター

url

string

"https://myaccount.blob.core.windows.net/mycontainer" など、Azure Storage コンテナーを指す URL 文字列。 AnonymousCredential を使用している場合は、SAS を追加できます (例: "https://myaccount.blob.core.windows.net/mycontainer?sasString")。

pipeline
PipelineLike

newPipeline() を呼び出して既定のパイプラインを作成するか、カスタマイズされたパイプラインを提供します。

ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

ContainerClient のインスタンスを作成します。 このメソッドは、コンテナーを指す URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされず、URL パス内の特殊文字のみがエスケープされます。 BLOB 名に が含まれている場合は ? または %、BLOB 名は URL でエンコードする必要があります。

new ContainerClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

パラメーター

url

string

"https://myaccount.blob.core.windows.net/mycontainer" など、Azure Storage コンテナーを指す URL 文字列。 AnonymousCredential を使用している場合は、SAS を追加できます (例: "https://myaccount.blob.core.windows.net/mycontainer?sasString")。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

AnonymousCredential、StorageSharedKeyCredential、またはサービスへの要求を @azure/identity 認証するためのパッケージからの資格情報など。 TokenCredential インターフェイスを実装する オブジェクトを指定することもできます。 指定しない場合は、AnonymousCredential が使用されます。

options
StoragePipelineOptions

省略可能。 HTTP パイプラインを構成するためのオプション。

ContainerClient(string, string, StoragePipelineOptions)

ContainerClient のインスタンスを作成します。

new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)

パラメーター

connectionString

string

Azure ストレージ アカウントのアカウント接続文字列または SAS 接続文字列。 [ 注 - アカウント接続文字列は、NODE.JSランタイムでのみ使用できます。 ] アカウント接続文字列の例 -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net SAS 接続文字列の例 - 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

containerName

string

コンテナー名。

options
StoragePipelineOptions

省略可能。 HTTP パイプラインを構成するためのオプション。

プロパティの詳細

containerName

コンテナーの名前。

string containerName

プロパティ値

string

継承されたプロパティの詳細

accountName

accountName: string

プロパティ値

string

継承元 StorageClient.accountName

credential

AnonymousCredential、StorageSharedKeyCredential、またはサービスへの要求を @azure/identity 認証するためのパッケージからの資格情報など。 TokenCredential インターフェイスを実装する オブジェクトを指定することもできます。 指定しない場合は、AnonymousCredential が使用されます。

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

プロパティ値

継承元 StorageClient.credential

url

エンコードされた URL 文字列値。

url: string

プロパティ値

string

継承元 StorageClient.url

メソッドの詳細

create(ContainerCreateOptions)

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、操作は失敗します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-container 名前付け規則:」を参照してください。 https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function create(options?: ContainerCreateOptions): Promise<ContainerCreateResponse>

パラメーター

options
ContainerCreateOptions

コンテナー作成操作のオプション。

使用例:

const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);

戻り値

createIfNotExists(ContainerCreateOptions)

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、変更されません。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-container 名前付け規則:」を参照してください。 https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function createIfNotExists(options?: ContainerCreateOptions): Promise<ContainerCreateIfNotExistsResponse>

パラメーター

戻り値

delete(ContainerDeleteMethodOptions)

指定したコンテナーに削除のマークを付けます。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container」を参照してください。

function delete(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>

パラメーター

options
ContainerDeleteMethodOptions

コンテナー削除操作のオプション。

戻り値

deleteBlob(string, ContainerDeleteBlobOptions)

指定した BLOB またはスナップショットに削除のマークを付けます。 BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 BLOB の削除操作を使用して、両方を同時に削除できます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob」を参照してください。

function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions): Promise<BlobDeleteResponse>

パラメーター

blobName

string

options
ContainerDeleteBlobOptions

BLOB 削除操作のオプション。

戻り値

BLOB 削除応答データをブロックします。

deleteIfExists(ContainerDeleteMethodOptions)

指定したコンテナーが存在する場合は、削除対象としてマークします。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container」を参照してください。

function deleteIfExists(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteIfExistsResponse>

パラメーター

options
ContainerDeleteMethodOptions

コンテナー削除操作のオプション。

戻り値

exists(ContainerExistsOptions)

このクライアントによって表される Azure コンテナー リソースが存在する場合は true を返します。それ以外の場合は false。

注: 既存のコンテナーは他のクライアントまたはアプリケーションによって削除される可能性があるため、この関数は注意して使用してください。 その逆も同様に、同じ名前の新しいコンテナーは、この関数の完了後に他のクライアントまたはアプリケーションによって追加される場合があります。

function exists(options?: ContainerExistsOptions): Promise<boolean>

パラメーター

戻り値

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

指定したコンテナーの下で、指定したタグを持つすべての BLOB を検索する非同期反復可能な反復子を返します。

.byPage() は、ページ内の BLOB を一覧表示する非同期反復可能反復子を返します。

構文の使用 for await 例:

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

iter.next() の使用例:

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

byPage() の使用例:

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

マーカーでページングを使用する例:

let i = 1;
let iterator = containerClient.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 = containerClient
  .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}`);
  }
}
function findBlobsByTags(tagFilterSqlExpression: string, options?: ContainerFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ContainerFindBlobsByTagsSegmentResponse, PageSettings>

パラメーター

tagFilterSqlExpression

string

where パラメーターを使用すると、呼び出し元は、特定の式に一致するタグを持つ BLOB に対してクエリを実行できます。 結果で BLOB を返すには、指定された式が true に評価される必要があります。 [OData - ABNF] フィルター構文規則は、where クエリ パラメーターの値の正式な文法を定義します。ただし、BLOB サービスでは、OData フィルター構文のサブセットのみがサポートされます。

options
ContainerFindBlobByTagsOptions

タグで BLOB を検索するオプション。

戻り値

generateSasUrl(ContainerGenerateSasUrlOptions)

共有キー資格情報を使用して構築された ContainerClient でのみ使用できます。

渡されたクライアントのプロパティとパラメーターに基づいて、BLOB Container Service Shared Access Signature (SAS) URI を生成します。 SAS は、クライアントの共有キー資格情報によって署名されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas」を参照してください。

function generateSasUrl(options: ContainerGenerateSasUrlOptions): Promise<string>

パラメーター

options
ContainerGenerateSasUrlOptions

省略可能なパラメーター。

戻り値

Promise<string>

このクライアントによって表されるリソースへの URI と、生成された SAS トークンで構成される SAS URI。

getAccessPolicy(ContainerGetAccessPolicyOptions)

指定したコンテナーのアクセス許可を取得します。 アクセス許可は、コンテナー データがパブリックにアクセス可能かどうかを示します。

警告: startsOn 文字列と expiresOn 文字列を解析すると、JavaScript 日付の精度が失われる可能性があります。 たとえば、新しい Date("2018-12-31T03:44:23.8827891Z").toISOString() は "2018-12-31T03:44:23.882Z" を取得します。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl」を参照してください。

function getAccessPolicy(options?: ContainerGetAccessPolicyOptions): Promise<ContainerGetAccessPolicyResponse>

パラメーター

options
ContainerGetAccessPolicyOptions

Container Get Access Policy 操作のオプション。

戻り値

getAppendBlobClient(string)

AppendBlobClient を作成します

function getAppendBlobClient(blobName: string): AppendBlobClient

パラメーター

blobName

string

追加 BLOB 名

戻り値

getBlobBatchClient()

バッチ操作を実行する BlobBatchClient オブジェクトを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch」を参照してください。

function getBlobBatchClient(): BlobBatchClient

戻り値

このコンテナーの新しい BlobBatchClient オブジェクト。

getBlobClient(string)

BlobClient を作成します

function getBlobClient(blobName: string): BlobClient

パラメーター

blobName

string

BLOB 名

戻り値

指定された BLOB 名の新しい BlobClient オブジェクト。

getBlobLeaseClient(string)

コンテナーのリースを管理する BlobLeaseClient を取得します。

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

パラメーター

proposeLeaseId

string

最初に提案されたリース ID。

戻り値

コンテナーのリースを管理するための新しい BlobLeaseClient オブジェクト。

getBlockBlobClient(string)

BlockBlobClient を作成します

function getBlockBlobClient(blobName: string): BlockBlobClient

パラメーター

blobName

string

ブロック BLOB 名

使用例:

const content = "Hello world!";

const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);

戻り値

getPageBlobClient(string)

PageBlobClient を作成します

function getPageBlobClient(blobName: string): PageBlobClient

パラメーター

blobName

string

ページ BLOB 名

戻り値

getProperties(ContainerGetPropertiesOptions)

指定したコンテナーのすべてのユーザー定義メタデータとシステム プロパティを返します。 返されるデータにコンテナーの BLOB 一覧は含まれません。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties」を参照してください。

警告: 応答で返されるオブジェクトのキーは metadata 、最初に大文字が含まれていた場合でも小文字になります。 これは、 オプションを使用includeMetadataして BlobServiceClient メソッドによってlistContainers返されるメタデータ キーとは異なり、元の大文字と小文字が保持されます。

function getProperties(options?: ContainerGetPropertiesOptions): Promise<ContainerGetPropertiesResponse>

パラメーター

options
ContainerGetPropertiesOptions

Container Get Properties 操作のオプション。

戻り値

listBlobsByHierarchy(string, ContainerListBlobsOptions)

すべての BLOB を階層別に一覧表示する非同期反復可能反復子を返します。 指定したアカウントの下。

.byPage() は非同期反復可能な反復子を返し、階層別の BLOB をページで一覧表示します。

構文の使用 for await 例:

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
}

iter.next() の使用例:

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
  entity = await iter.next();
}

byPage() の使用例:

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}

最大ページ サイズでページングを使用する例:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient
  .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
  .byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions): PagedAsyncIterableIterator<({ kind: "prefix" } & BlobPrefix) | ({ kind: "blob" } & BlobItem), ContainerListBlobHierarchySegmentResponse, PageSettings>

パラメーター

delimiter

string

仮想階層の定義に使用される文字または文字列

options
ContainerListBlobsOptions

BLOB 操作を一覧表示するオプション。

戻り値

listBlobsFlat(ContainerListBlobsOptions)

指定したアカウントのすべての BLOB を一覧表示する非同期反復可能反復子を返します。

.byPage() は、ページ内の BLOB を一覧表示する非同期反復可能反復子を返します。

構文の使用 for await 例:

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

iter.next() の使用例:

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
function listBlobsFlat(options?: ContainerListBlobsOptions): PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse, PageSettings>

パラメーター

options
ContainerListBlobsOptions

BLOB を一覧表示するオプション。

戻り値

ページングをサポートする asyncIterableIterator。

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

指定したコンテナーのアクセス許可を設定します。 アクセス許可は、コンテナー内の BLOB がパブリックにアクセス可能かどうかを示します。

コンテナーのアクセス許可を設定すると、既存のアクセス許可が置換されます。 アクセスまたは containerAcl が指定されていない場合は、既存のコンテナー ACL が削除されます。

コンテナーに格納されているアクセス ポリシーを確立すると、有効になるまでに最大 30 秒かかる場合があります。 その間、アクセス ポリシーがアクティブになるまでは、保存されているアクセス ポリシーに関連付けられている共有アクセス署名は、ステータス コード 403 (Forbidden) が返されて失敗します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl」を参照してください。

function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions): Promise<ContainerSetAccessPolicyResponse>

パラメーター

access
PublicAccessType

コンテナー内のデータへのパブリック アクセスのレベル。

containerAcl

SignedIdentifier[]

一意の ID とアクセス ポリシーの詳細を持つ要素の配列。

options
ContainerSetAccessPolicyOptions

コンテナーへのオプションアクセス ポリシーの設定操作。

戻り値

setMetadata(Metadata, ContainerSetMetadataOptions)

指定したコンテナーに対して 1 つ以上のユーザー定義の名前と値のペアを設定します。

オプションが指定されていない場合、または パラメーターにメタデータが定義されていない場合は、コンテナー メタデータが削除されます。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata」を参照してください。

function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions): Promise<ContainerSetMetadataResponse>

パラメーター

metadata
Metadata

既存のメタデータをこの値に置き換えます。 値が指定されていない場合、既存のメタデータは削除されます。

options
ContainerSetMetadataOptions

コンテナーセットメタデータ操作のオプション。

戻り値

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

新しいブロック BLOB を作成するか、既存のブロック BLOB のコンテンツを更新します。

既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新はサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、 stageBlock と commitBlockList を使用 します

これは非並列アップロード方法です。コンカレンシー アップロードのパフォーマンスを向上させるには、 uploadFileuploadStream 、または uploadBrowserData を使用してください。

https://docs.microsoft.com/rest/api/storageservices/put-blob」を参照してください。

function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions): Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

パラメーター

blobName

string

作成または更新するブロック BLOB の名前。

body
HttpRequestBody

BLOB、string、ArrayBuffer、ArrayBufferView、またはデータ ソースの先頭からのオフセットを持つ新しい読み取り可能ストリームを返す関数。

contentLength

number

本文の長さ (バイト単位)。 Buffer.byteLength() を使用して、Base64/Hex 以外のエンコード文字を含む文字列の本文の長さを計算します。

options
BlockBlobUploadOptions

ブロック BLOB アップロード操作を構成するためのオプション。

戻り値

Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

ブロック BLOB アップロード応答データと対応する BlockBlobClient インスタンス。