Partilhar via


ContainerClient class

Um ContainerClient representa uma URL para o contêiner de 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, apenas 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, apenas 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 recipiente e quaisquer blobs contidos nele são posteriormente excluídos 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 é 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.

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

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

exists(ContainerExistsOptions)

Retorna true se o recurso de contêiner do Azure representado por este cliente existir; falso caso contrário.

NOTA: utilize esta função com cuidado, uma vez que um contentor existente pode ser eliminado por outros clientes ou aplicações. 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 tag especificada no contêiner especificado.

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

Exemplo usando sintaxe for await:

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 de utilização da 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 cadeia de caracteres para assinar um URI SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades do cliente e nos parâmetros passados. O SAS é assinado pela credencial de chave compartilhada do cliente.

Veja 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 SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades e parâmetros do cliente passados. O SAS é assinado pela credencial de chave compartilhada do cliente.

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

generateUserDelegationSasStringToSign(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera cadeia de caracteres para assinar um URI SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades do cliente e nos parâmetros passados. A SAS é assinada pela chave de delegação do usuário de entrada.

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

generateUserDelegationSasUrl(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera um URI 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.

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

AVISO: JavaScript Date perderá potencialmente a precisão ao analisar startsOn e expiresOn strings. 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

getAccountInfo(ContainerGetAccountInfoOptions)

A operação Obter informações da conta retorna o nome da sku e o tipo de conta para a conta especificada. A operação Obter informações da conta está disponível em versões de serviço que começam com a versão 2018-03-28.

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

getAppendBlobClient(string)

Cria um AppendBlobClient

getBlobBatchClient()

Cria um objeto BlobBatchClient para conduzir 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 de blobs do contêiner.

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

AVISO: O objeto metadata retornado na resposta terá suas teclas em 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á seu invólucro 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 nas páginas.

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

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 de utilização de 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 sintaxe 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}`);
}

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 de utilização da 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 containerAcl fornecido, a ACL do contêiner existente será removida.

Quando você estabelece uma política de acesso armazenado em um contêiner, ela pode levar até 30 segundos para entrar em vigor. Durante esse intervalo, uma assinatura de acesso compartilhado associada à política de acesso armazenado falhará com o código de status 403 (Proibido), até que a política de acesso fique 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 metadados 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, RequestBodyType, number, BlockBlobUploadOptions)

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

A atualização de um blob de bloco existente substitui quaisquer 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 bloco, use stageBlock e commitBlockList.

Este é um método de upload não paralelo, use uploadFile, uploadStream ou uploadBrowserData para um melhor desempenho com o upload simultâneo.

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 apontando para um contêiner. A cadeia de caracteres de URL codificada NÃO será escapada duas vezes, apenas 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 de 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, apenas 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 de 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 tempo de execução. ] 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 de Propriedade

containerName

O nome do contêiner.

string containerName

Valor de Propriedade

string

Detalhes da Propriedade Herdada

accountName

accountName: string

Valor de 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 de Propriedade

herdado de StorageClient.credential

url

Valor da cadeia de caracteres de URL codificada.

url: string

Valor de Propriedade

string

herdado de StorageClient.url

Detalhes de 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.

Exemplo de uso:

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

Devoluções

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

Devoluções

delete(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão. O recipiente e quaisquer blobs contidos nele são posteriormente excluídos 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 Container Delete.

Devoluções

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.

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 Blob Delete.

Devoluções

Bloquear dados de resposta de exclusão de blob.

deleteIfExists(ContainerDeleteMethodOptions)

Marca o contêiner especificado para exclusão, se ele existir. O recipiente e quaisquer blobs contidos nele são posteriormente excluídos 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 Container Delete.

Devoluções

exists(ContainerExistsOptions)

Retorna true se o recurso de contêiner do Azure representado por este cliente existir; falso caso contrário.

NOTA: utilize esta função com cuidado, uma vez que um contentor existente pode ser eliminado por outros clientes ou aplicações. 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

Devoluções

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

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

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

Exemplo usando sintaxe for await:

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 de utilização da 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 tags correspondem a uma determinada expressão. A expressão dada deve ser avaliada como verdadeira para que um blob seja retornado nos resultados. A regra de sintaxe do filtro [OData - ABNF] define a gramática formal para o valor do parâmetro de consulta where; no entanto, apenas um subconjunto da sintaxe do filtro OData é suportado no serviço Blob.

options
ContainerFindBlobByTagsOptions

Opções para encontrar blobs por tags.

Devoluções

generateSasStringToSign(ContainerGenerateSasUrlOptions)

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

Gera cadeia de caracteres para assinar um URI SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades do cliente e nos parâmetros passados. O SAS é assinado pela credencial de chave compartilhada do cliente.

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

Devoluções

string

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

generateSasUrl(ContainerGenerateSasUrlOptions)

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

Gera um URI SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades e parâmetros do cliente passados. O SAS é assinado 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.

Devoluções

Promise<string>

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

generateUserDelegationSasStringToSign(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera cadeia de caracteres para assinar um URI SAS (Assinatura de Acesso Compartilhado) do Serviço de Contêiner de Blob com base nas propriedades do cliente e nos parâmetros passados. A SAS é assinada pela chave de delegação do usuário de entrada.

Veja 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 de retorno de blobServiceClient.getUserDelegationKey()

Devoluções

string

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

generateUserDelegationSasUrl(ContainerGenerateSasUrlOptions, UserDelegationKey)

Gera um URI 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.

Veja 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 de retorno de blobServiceClient.getUserDelegationKey()

Devoluções

Promise<string>

O URI SAS que consiste no URI para o recurso representado por este 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: JavaScript Date perderá potencialmente a precisão ao analisar startsOn e expiresOn strings. 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.

Devoluções

getAccountInfo(ContainerGetAccountInfoOptions)

A operação Obter informações da conta retorna o nome da sku e o tipo de conta para a conta especificada. A operação Obter informações da conta está disponível em versões de serviço que começam com a versão 2018-03-28.

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

Devoluções

Dados de resposta para a operação Obter informações da conta do serviço.

getAppendBlobClient(string)

Cria um AppendBlobClient

function getAppendBlobClient(blobName: string): AppendBlobClient

Parâmetros

blobName

string

Um nome de blob de acréscimo

Devoluções

getBlobBatchClient()

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

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

function getBlobBatchClient(): BlobBatchClient

Devoluções

Um novo objeto BlobBatchClient para este contêiner.

getBlobClient(string)

Cria um BlobClient

function getBlobClient(blobName: string): BlobClient

Parâmetros

blobName

string

Um nome de blob

Devoluções

Um novo objeto BlobClient para o nome de blob fornecido.

getBlobLeaseClient(string)

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

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Parâmetros

proposeLeaseId

string

Proposta inicial de arrendamento Id.

Devoluções

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 bloco

Exemplo de uso:

const content = "Hello world!";

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

Devoluções

getPageBlobClient(string)

Cria um PageBlobClient

function getPageBlobClient(blobName: string): PageBlobClient

Parâmetros

blobName

string

Um nome de blob de página

Devoluções

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.

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

AVISO: O objeto metadata retornado na resposta terá suas teclas em 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á seu invólucro original.

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

Parâmetros

options
ContainerGetPropertiesOptions

Opções para a operação Obter propriedades do contêiner.

Devoluções

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 nas páginas.

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

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 de utilização de 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.

Devoluções

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

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 de utilização da 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.

Devoluções

Um asyncIterableIterator que suporta 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 containerAcl fornecido, a ACL do contêiner existente será removida.

Quando você estabelece uma política de acesso armazenado em um contêiner, ela pode levar até 30 segundos para entrar em vigor. Durante esse intervalo, uma assinatura de acesso compartilhado associada à política de acesso armazenado falhará com o código de status 403 (Proibido), até que a política de acesso fique 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 um ID exclusivo e detalhes da política de acesso.

options
ContainerSetAccessPolicyOptions

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

Devoluções

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.

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 Container set Metadata.

Devoluções

uploadBlockBlob(string, RequestBodyType, number, BlockBlobUploadOptions)

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

A atualização de um blob de bloco existente substitui quaisquer 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 bloco, use stageBlock e commitBlockList.

Este é um método de upload não paralelo, use uploadFile, uploadStream ou uploadBrowserData para um melhor desempenho com o upload simultâneo.

Veja 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 bloco a ser criado ou atualizado.

body
HttpRequestBody

Blob, string, 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 para uma cadeia de caracteres incluindo caracteres não codificados em Base64/Hex.

options
BlockBlobUploadOptions

Opções para configurar a operação Block Blob Upload.

Devoluções

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

Bloqueie os dados de resposta de carregamento de Blob e a instância BlockBlobClient correspondente.