Share via


ContainerClient class

Um ContainerClient representa uma URL para o contêiner do Armazenamento do Azure, permitindo que você manipule seus blobs.

Extends

StorageClient

Construtores

ContainerClient(string, PipelineLike)

Cria uma instância de ContainerClient. Esse método aceita uma URL que aponta para um contêiner. A cadeia de caracteres de URL codificada NÃO terá escape duas vezes, somente caracteres especiais no caminho da URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob deve ser codificado na URL.

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

Cria uma instância de ContainerClient. Esse método aceita uma URL que aponta para um contêiner. A cadeia de caracteres de URL codificada NÃO terá escape duas vezes, somente caracteres especiais no caminho da URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob deve ser codificado na URL.

ContainerClient(string, string, StoragePipelineOptions)

Cria uma instância de ContainerClient.

Propriedades

containerName

É o nome do contêiner.

Propriedades herdadas

accountName
credential

Como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar solicitações para o serviço. Você também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, AnonymousCredential será usado.

url

Valor da cadeia de caracteres de URL codificada.

Métodos

create(ContainerCreateOptions)

Cria um novo contêiner na conta especificada. Se o contêiner com o mesmo nome já existir, a operação falhará.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Regras de nomenclatura: consulte https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

createIfNotExists(ContainerCreateOptions)

Cria um novo contêiner na conta especificada. Se o contêiner com o mesmo nome já existir, ele não será alterado.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Regras de nomenclatura: consulte https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

delete(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão. O contêiner e todos os blobs contidos são excluídos posteriormente, durante a coleta de lixo.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

deleteBlob(string, ContainerDeleteBlobOptions)

Marca o blob ou instantâneo especificado para exclusão. O blob é excluído posteriormente, durante a coleta de lixo. Observe que para excluir um blob, você deve excluir todos os seus instantâneos. Você pode excluir ambos ao mesmo tempo com a operação Excluir Blob.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

deleteIfExists(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão se ele existir. O contêiner e todos os blobs contidos são excluídos posteriormente, durante a coleta de lixo.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

exists(ContainerExistsOptions)

Retornará true se o recurso de contêiner do Azure representado por esse cliente existir; caso contrário, false.

OBSERVAÇÃO: use essa função com cuidado, pois um contêiner existente pode ser excluído por outros clientes ou aplicativos. Vice-versa, novos contêineres com o mesmo nome podem ser adicionados por outros clientes ou aplicativos após a conclusão dessa função.

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Retorna um iterador iterável assíncrono para localizar todos os blobs com a marca especificada no contêiner especificado.

.byPage() retorna um iterador iterável assíncrono para listar os blobs nas páginas.

Exemplo usando for await a sintaxe:

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

Exemplo usando 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();
}

Exemplo usando 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}`);
    }
  }
}

Exemplo usando paginação com um marcador:

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)

Disponível somente para ContainerClient construído com uma credencial de chave compartilhada.

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades e parâmetros do cliente passados. A SAS é assinada pela credencial de chave compartilhada do cliente.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

getAccessPolicy(ContainerGetAccessPolicyOptions)

Obtém as permissões para o contêiner especificado. As permissões indicam se os dados de um contêiner podem ser acessados publicamente.

AVISO: a Data do JavaScript potencialmente perderá precisão ao analisar startsOn e expiresOn cadeias de caracteres. Por exemplo, a nova Data("2018-12-31T03:44:23.8827891Z"). toISOString() obterá "2018-12-31T03:44:23.882Z".

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

getAppendBlobClient(string)

Cria um AppendBlobClient

getBlobBatchClient()

Cria um objeto BlobBatchClient para realizar operações em lote.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch

getBlobClient(string)

Cria um BlobClient

getBlobLeaseClient(string)

Obtenha um BlobLeaseClient que gerencia concessões no contêiner.

getBlockBlobClient(string)

Cria um BlockBlobClient

getPageBlobClient(string)

Cria um PageBlobClient

getProperties(ContainerGetPropertiesOptions)

Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o contêiner especificado. Os dados retornados não incluem a lista do contêiner de blobs.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

AVISO: o metadata objeto retornado na resposta terá suas chaves em letras minúsculas, mesmo que elas originalmente contivessem caracteres maiúsculos. Isso difere das chaves de metadados retornadas pelo listContainers método de BlobServiceClient usando a opção includeMetadata , que manterá o uso de maiúsculas e minúsculas original.

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Retorna um iterador iterável assíncrono para listar todos os blobs por hierarquia. na conta especificada.

.byPage() retorna um iterador iterável assíncrono para listar os blobs por hierarquia em páginas.

Exemplo usando for await a sintaxe:

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

Exemplo usando 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();
}

Exemplo usando 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}`);
  }
}

Exemplo usando paginação com um tamanho máximo de página:

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)

Retorna um iterador iterável assíncrono para listar todos os blobs na conta especificada.

.byPage() retorna um iterador iterável assíncrono para listar os blobs nas páginas.

Exemplo usando for await a sintaxe:

// 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}`);
}

Exemplo usando 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();
}

Exemplo usando 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}`);
  }
}

Exemplo usando paginação com um marcador:

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)

Define as permissões para o contêiner especificado. As permissões indicam se os blobs de um contêiner podem ser acessados publicamente.

Quando você define permissões para um contêiner, as permissões existentes são substituídas. Se nenhum acesso ou contêinerAcl for fornecido, a ACL de contêiner existente será removida.

O estabelecimento de uma política de acesso armazenada em um contêiner pode levar até 30 segundos para ter efeito. Durante esse intervalo, uma assinatura de acesso compartilhado que esteja associada à política de acesso armazenada falhará com o código de status 403 (Proibido) até que a política de acesso se torne ativa.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

setMetadata(Metadata, ContainerSetMetadataOptions)

Define um ou mais pares nome-valor definidos pelo usuário para o contêiner especificado.

Se nenhuma opção for fornecida ou nenhum metadado definido no parâmetro , os metadados do contêiner serão removidos.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente.

A atualização de um blob de blocos existente substitui todos os metadados existentes no blob. Não há suporte para atualizações parciais; o conteúdo do blob existente é substituído pelo novo conteúdo. Para executar uma atualização parcial de um blob de blocos, use stageBlock e commitBlockList.

Esse é um método de carregamento não paralelo, use uploadFile, uploadStream ou uploadBrowserData para melhorar o desempenho com o carregamento de simultaneidade.

Veja https://docs.microsoft.com/rest/api/storageservices/put-blob

Detalhes do construtor

ContainerClient(string, PipelineLike)

Cria uma instância de ContainerClient. Esse método aceita uma URL que aponta para um contêiner. A cadeia de caracteres de URL codificada NÃO terá escape duas vezes, somente caracteres especiais no caminho da URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob deve ser codificado na URL.

new ContainerClient(url: string, pipeline: PipelineLike)

Parâmetros

url

string

Uma cadeia de caracteres de URL apontando para o contêiner do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Você pode acrescentar uma SAS se estiver usando AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?sasString".

pipeline
PipelineLike

Chame newPipeline() para criar um pipeline padrão ou forneça um pipeline personalizado.

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

Cria uma instância de ContainerClient. Esse método aceita uma URL que aponta para um contêiner. A cadeia de caracteres de URL codificada NÃO terá escape duas vezes, somente caracteres especiais no caminho da URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob deve ser codificado na URL.

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

Parâmetros

url

string

Uma cadeia de caracteres de URL apontando para o contêiner do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Você pode acrescentar uma SAS se estiver usando AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar solicitações para o serviço. Você também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, AnonymousCredential será usado.

options
StoragePipelineOptions

Opcional. Opções para configurar o pipeline HTTP.

ContainerClient(string, string, StoragePipelineOptions)

Cria uma instância de ContainerClient.

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

Parâmetros

connectionString

string

Cadeia de conexão de conta ou uma cadeia de conexão SAS de uma conta de armazenamento do Azure. [ Observação - A cadeia de conexão da conta só pode ser usada em NODE.JS runtime. ] Exemplo de cadeia de conexão de conta –DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemplo de cadeia de conexão 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

Nome do contêiner.

options
StoragePipelineOptions

Opcional. Opções para configurar o pipeline HTTP.

Detalhes da propriedade

containerName

É o nome do contêiner.

string containerName

Valor da propriedade

string

Detalhes das propriedades herdadas

accountName

accountName: string

Valor da propriedade

string

Herdado de StorageClient.accountName

credential

Como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar solicitações para o serviço. Você também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, AnonymousCredential será usado.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor da propriedade

Herdado de StorageClient.credential

url

Valor da cadeia de caracteres de URL codificada.

url: string

Valor da propriedade

string

Herdado de StorageClient.url

Detalhes do método

create(ContainerCreateOptions)

Cria um novo contêiner na conta especificada. Se o contêiner com o mesmo nome já existir, a operação falhará.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Regras de nomenclatura: consulte https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

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

Parâmetros

options
ContainerCreateOptions

Opções para a operação Criação de Contêiner.

Exemplo de uso:

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

Retornos

createIfNotExists(ContainerCreateOptions)

Cria um novo contêiner na conta especificada. Se o contêiner com o mesmo nome já existir, ele não será alterado.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Regras de nomenclatura: consulte https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

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

Parâmetros

Retornos

delete(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão. O contêiner e todos os blobs contidos são excluídos posteriormente, durante a coleta de lixo.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

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

Parâmetros

options
ContainerDeleteMethodOptions

Opções para a operação exclusão de contêiner.

Retornos

deleteBlob(string, ContainerDeleteBlobOptions)

Marca o blob ou instantâneo especificado para exclusão. O blob é excluído posteriormente, durante a coleta de lixo. Observe que para excluir um blob, você deve excluir todos os seus instantâneos. Você pode excluir ambos ao mesmo tempo com a operação Excluir Blob.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

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

Parâmetros

blobName

string

options
ContainerDeleteBlobOptions

Opções para a operação de exclusão de blob.

Retornos

Bloquear dados de resposta de exclusão de blob.

deleteIfExists(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão se ele existir. O contêiner e todos os blobs contidos são excluídos posteriormente, durante a coleta de lixo.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

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

Parâmetros

options
ContainerDeleteMethodOptions

Opções para a operação exclusão de contêiner.

Retornos

exists(ContainerExistsOptions)

Retornará true se o recurso de contêiner do Azure representado por esse cliente existir; caso contrário, false.

OBSERVAÇÃO: use essa função com cuidado, pois um contêiner existente pode ser excluído por outros clientes ou aplicativos. Vice-versa, novos contêineres com o mesmo nome podem ser adicionados por outros clientes ou aplicativos após a conclusão dessa função.

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

Parâmetros

Retornos

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Retorna um iterador iterável assíncrono para localizar todos os blobs com a marca especificada no contêiner especificado.

.byPage() retorna um iterador iterável assíncrono para listar os blobs nas páginas.

Exemplo usando for await a sintaxe:

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

Exemplo usando 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();
}

Exemplo usando 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}`);
    }
  }
}

Exemplo usando paginação com um marcador:

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>

Parâmetros

tagFilterSqlExpression

string

O parâmetro where permite que o chamador consulte blobs cujas marcas correspondem a uma determinada expressão. A expressão fornecida deve ser avaliada como true para que um blob seja retornado nos resultados. A regra de sintaxe de filtro[OData - ABNF] define a gramática formal para o valor do parâmetro de consulta where; no entanto, há suporte apenas para um subconjunto da sintaxe de filtro OData no serviço Blob.

options
ContainerFindBlobByTagsOptions

Opções para localizar blobs por marcas.

Retornos

generateSasUrl(ContainerGenerateSasUrlOptions)

Disponível somente para ContainerClient construído com uma credencial de chave compartilhada.

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades e parâmetros do cliente passados. A SAS é assinada pela credencial de chave compartilhada do cliente.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

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

Parâmetros

options
ContainerGenerateSasUrlOptions

Parâmetros opcionais.

Retornos

Promise<string>

O URI de SAS que consiste no URI para o recurso representado por esse cliente, seguido pelo token SAS gerado.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Obtém as permissões para o contêiner especificado. As permissões indicam se os dados de um contêiner podem ser acessados publicamente.

AVISO: a Data do JavaScript potencialmente perderá precisão ao analisar startsOn e expiresOn cadeias de caracteres. Por exemplo, a nova Data("2018-12-31T03:44:23.8827891Z"). toISOString() obterá "2018-12-31T03:44:23.882Z".

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

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

Parâmetros

options
ContainerGetAccessPolicyOptions

Opções para a operação Da Política de Acesso de Obtenção de Contêiner.

Retornos

getAppendBlobClient(string)

Cria um AppendBlobClient

function getAppendBlobClient(blobName: string): AppendBlobClient

Parâmetros

blobName

string

Um nome de blob de acréscimo

Retornos

getBlobBatchClient()

Cria um objeto BlobBatchClient para realizar operações em lote.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch

function getBlobBatchClient(): BlobBatchClient

Retornos

Um novo objeto BlobBatchClient para esse contêiner.

getBlobClient(string)

Cria um BlobClient

function getBlobClient(blobName: string): BlobClient

Parâmetros

blobName

string

Um nome de blob

Retornos

Um novo objeto BlobClient para o nome do blob fornecido.

getBlobLeaseClient(string)

Obtenha um BlobLeaseClient que gerencia concessões no contêiner.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Parâmetros

proposeLeaseId

string

ID de concessão proposta inicial.

Retornos

Um novo objeto BlobLeaseClient para gerenciar concessões no contêiner.

getBlockBlobClient(string)

Cria um BlockBlobClient

function getBlockBlobClient(blobName: string): BlockBlobClient

Parâmetros

blobName

string

Um nome de blob de blocos

Exemplo de uso:

const content = "Hello world!";

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

Retornos

getPageBlobClient(string)

Cria um PageBlobClient

function getPageBlobClient(blobName: string): PageBlobClient

Parâmetros

blobName

string

Um nome de blob de páginas

Retornos

getProperties(ContainerGetPropertiesOptions)

Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o contêiner especificado. Os dados retornados não incluem a lista do contêiner de blobs.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

AVISO: o metadata objeto retornado na resposta terá suas chaves em letras minúsculas, mesmo que elas originalmente contivessem caracteres maiúsculos. Isso difere das chaves de metadados retornadas pelo listContainers método de BlobServiceClient usando a opção includeMetadata , que manterá o uso de maiúsculas e minúsculas original.

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

Parâmetros

options
ContainerGetPropertiesOptions

Opções para a operação Obter Propriedades do Contêiner.

Retornos

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Retorna um iterador iterável assíncrono para listar todos os blobs por hierarquia. na conta especificada.

.byPage() retorna um iterador iterável assíncrono para listar os blobs por hierarquia em páginas.

Exemplo usando for await a sintaxe:

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

Exemplo usando 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();
}

Exemplo usando 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}`);
  }
}

Exemplo usando paginação com um tamanho máximo de página:

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>

Parâmetros

delimiter

string

O caractere ou cadeia de caracteres usado para definir a hierarquia virtual

options
ContainerListBlobsOptions

Opções para listar a operação de blobs.

Retornos

listBlobsFlat(ContainerListBlobsOptions)

Retorna um iterador iterável assíncrono para listar todos os blobs na conta especificada.

.byPage() retorna um iterador iterável assíncrono para listar os blobs nas páginas.

Exemplo usando for await a sintaxe:

// 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}`);
}

Exemplo usando 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();
}

Exemplo usando 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}`);
  }
}

Exemplo usando paginação com um marcador:

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>

Parâmetros

options
ContainerListBlobsOptions

Opções para listar blobs.

Retornos

Um asyncIterableIterator que dá suporte à paginação.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Define as permissões para o contêiner especificado. As permissões indicam se os blobs de um contêiner podem ser acessados publicamente.

Quando você define permissões para um contêiner, as permissões existentes são substituídas. Se nenhum acesso ou contêinerAcl for fornecido, a ACL de contêiner existente será removida.

O estabelecimento de uma política de acesso armazenada em um contêiner pode levar até 30 segundos para ter efeito. Durante esse intervalo, uma assinatura de acesso compartilhado que esteja associada à política de acesso armazenada falhará com o código de status 403 (Proibido) até que a política de acesso se torne ativa.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

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

Parâmetros

access
PublicAccessType

O nível de acesso público aos dados no contêiner.

containerAcl

SignedIdentifier[]

Matriz de elementos cada um com uma ID exclusiva e detalhes da política de acesso.

options
ContainerSetAccessPolicyOptions

Opções para a operação Defina Política de Acesso de Conjunto de Contêineres.

Retornos

setMetadata(Metadata, ContainerSetMetadataOptions)

Define um ou mais pares nome-valor definidos pelo usuário para o contêiner especificado.

Se nenhuma opção for fornecida ou nenhum metadado definido no parâmetro , os metadados do contêiner serão removidos.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

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

Parâmetros

metadata
Metadata

Substitua os metadados existentes por esse valor. Se nenhum valor for fornecido, os metadados existentes serão removidos.

options
ContainerSetMetadataOptions

Opções para a operação de Metadados de Conjunto de Contêineres.

Retornos

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente.

A atualização de um blob de blocos existente substitui todos os metadados existentes no blob. Não há suporte para atualizações parciais; o conteúdo do blob existente é substituído pelo novo conteúdo. Para executar uma atualização parcial de um blob de blocos, use stageBlock e commitBlockList.

Esse é um método de carregamento não paralelo, use uploadFile, uploadStream ou uploadBrowserData para melhorar o desempenho com o carregamento de simultaneidade.

Veja https://docs.microsoft.com/rest/api/storageservices/put-blob

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

Parâmetros

blobName

string

Nome do blob de blocos a ser criado ou atualizado.

body
HttpRequestBody

Blob, cadeia de caracteres, ArrayBuffer, ArrayBufferView ou uma função que retorna um novo fluxo legível cujo deslocamento é do início da fonte de dados.

contentLength

number

Comprimento do corpo em bytes. Use Buffer.byteLength() para calcular o comprimento do corpo de uma cadeia de caracteres, incluindo caracteres não codificados em Base64/Hex.

options
BlockBlobUploadOptions

Opções para configurar a operação Bloquear Carregamento de Blobs.

Retornos

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

Bloquear dados de resposta de upload de Blob e a instância correspondente de BlockBlobClient.