Compartilhar 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 apontando para um contêiner. A cadeia de caracteres de URL codificada NÃO será escapada 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 apontando para um contêiner. A cadeia de caracteres de URL codificada NÃO será escapada 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 pacote @azure/identity 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á.

Consulte 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.

Consulte 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 nele são posteriormente excluídos durante a coleta de lixo.

Confira 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 é posteriormente excluído 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.

Confira 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 nele são posteriormente excluídos durante a coleta de lixo.

Confira 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; false caso contrário.

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 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 a 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}`);
  }
}
generateSasStringToSign(ContainerGenerateSasUrlOptions)

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

Gera uma cadeia de caracteres para assinar 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.

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

generateSasUrl(ContainerGenerateSasUrlOptions)

Disponível apenas 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.

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

generateUserDelegationSasStringToSign(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera uma cadeia de caracteres para assinar 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 chave de delegação do usuário de entrada.

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

generateUserDelegationSasUrl(ContainerGenerateSasUrlOptions, UserDelegationKey)

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 chave de delegação do usuário de entrada.

Confira 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 do contêiner podem ser acessados publicamente.

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

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

getAccountInfo(ContainerGetAccountInfoOptions)

A operação Obter Informações da Conta retorna o nome do sku e o tipo de conta da conta especificada. A operação Obter Informações da Conta está disponível em versões de serviço a partir da versão 2018-03-28.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

getAppendBlobClient(string)

Cria um AppendBlobClient

getBlobBatchClient()

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

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

getBlobClient(string)

Cria uma do BlobClient

getBlobLeaseClient(string)

Obtenha um blobLeaseClient que gerencia as 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 de blobs do contêiner.

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

AVISO: O objeto metadata retornado na resposta terá suas chaves em letras minúsculas, mesmo que originalmente contivessem caracteres maiúsculos. Isso difere das chaves de metadados retornadas pelo método listContainers de blobServiceClient usando a opção includeMetadata, que manterá sua caixa 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 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 a 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 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 a 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 em 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.

Quando você estabelece uma política de acesso armazenado em um contêiner, pode levar até 30 segundos para entrar em vigor. Durante esse intervalo, uma assinatura de acesso compartilhado associada à política de acesso armazenada falhará com o código de status 403 (Proibido), até que a política de acesso fique ativa.

Confira 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 metadados definido no parâmetro, os metadados do contêiner serão removidos.

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

uploadBlockBlob(string, RequestBodyType, 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 com o 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.

Confira 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 apontando para um contêiner. A cadeia de caracteres de URL codificada NÃO será escapada 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 que aponta 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 apontando para um contêiner. A cadeia de caracteres de URL codificada NÃO será escapada 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 que aponta 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 pacote @azure/identity 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 da 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 pacote @azure/identity 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á.

Consulte 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.

Uso de exemplo:

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.

Consulte 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 nele são posteriormente excluídos durante a coleta de lixo.

Confira 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 de Exclusão de Contêiner.

Retornos

deleteBlob(string, ContainerDeleteBlobOptions)

Marca o blob ou instantâneo especificado para exclusão. O blob é posteriormente excluído 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.

Confira 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 Blobs.

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 nele são posteriormente excluídos durante a coleta de lixo.

Confira 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 de Exclusão de Contêiner.

Retornos

exists(ContainerExistsOptions)

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

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 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 a 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 determinada 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 em que; no entanto, há suporte apenas para um subconjunto da sintaxe do filtro OData no serviço Blob.

options
ContainerFindBlobByTagsOptions

Opções para localizar blobs por marcas.

Retornos

generateSasStringToSign(ContainerGenerateSasUrlOptions)

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

Gera uma cadeia de caracteres para assinar 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.

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

function generateSasStringToSign(options: ContainerGenerateSasUrlOptions): string

Parâmetros

options
ContainerGenerateSasUrlOptions

Parâmetros opcionais.

Retornos

string

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

generateSasUrl(ContainerGenerateSasUrlOptions)

Disponível apenas 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.

Confira 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.

generateUserDelegationSasStringToSign(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera uma cadeia de caracteres para assinar 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 chave de delegação do usuário de entrada.

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

function generateUserDelegationSasStringToSign(options: ContainerGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): string

Parâmetros

options
ContainerGenerateSasUrlOptions

Parâmetros opcionais.

userDelegationKey
UserDelegationKey

Valor retornado de blobServiceClient.getUserDelegationKey()

Retornos

string

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

generateUserDelegationSasUrl(ContainerGenerateSasUrlOptions, UserDelegationKey)

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 chave de delegação do usuário de entrada.

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

function generateUserDelegationSasUrl(options: ContainerGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): Promise<string>

Parâmetros

options
ContainerGenerateSasUrlOptions

Parâmetros opcionais.

userDelegationKey
UserDelegationKey

Valor retornado de blobServiceClient.getUserDelegationKey()

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 do contêiner podem ser acessados publicamente.

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

Confira 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

getAccountInfo(ContainerGetAccountInfoOptions)

A operação Obter Informações da Conta retorna o nome do sku e o tipo de conta da conta especificada. A operação Obter Informações da Conta está disponível em versões de serviço a partir da versão 2018-03-28.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

function getAccountInfo(options?: ContainerGetAccountInfoOptions): Promise<ContainerGetAccountInfoResponse>

Parâmetros

options
ContainerGetAccountInfoOptions

Opções para a operação Obter Informações da Conta do Serviço.

Retornos

Dados de resposta para a operação Informações da Conta de Obtenção de Serviço.

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.

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

function getBlobBatchClient(): BlobBatchClient

Retornos

Um novo objeto BlobBatchClient para este contêiner.

getBlobClient(string)

Cria uma do 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 as 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

Uso de exemplo:

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ágina

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 de blobs do contêiner.

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

AVISO: O objeto metadata retornado na resposta terá suas chaves em letras minúsculas, mesmo que originalmente contivessem caracteres maiúsculos. Isso difere das chaves de metadados retornadas pelo método listContainers de blobServiceClient usando a opção includeMetadata, que manterá sua caixa 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 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 a 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 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 a 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 em 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.

Quando você estabelece uma política de acesso armazenado em um contêiner, pode levar até 30 segundos para entrar em vigor. Durante esse intervalo, uma assinatura de acesso compartilhado associada à política de acesso armazenada falhará com o código de status 403 (Proibido), até que a política de acesso fique ativa.

Confira 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 de 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 metadados definido no parâmetro, os metadados do contêiner serão removidos.

Confira 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 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, RequestBodyType, 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 com o 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.

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

function uploadBlockBlob(blobName: string, body: RequestBodyType, 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 tamanho do corpo de uma cadeia de caracteres, incluindo caracteres não codificados em Base64/Hex.

options
BlockBlobUploadOptions

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

Retornos

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

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