Share via


ContainerClient class

Um ContainerClient representa um URL para o contentor do Armazenamento do Azure que lhe permite manipular os blobs.

Extends

StorageClient

Construtores

ContainerClient(string, PipelineLike)

Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.

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

Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.

ContainerClient(string, string, StoragePipelineOptions)

Cria uma instância do ContainerClient.

Propriedades

containerName

O nome do contentor.

Propriedades Herdadas

accountName
credential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos para o serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

url

Valor da cadeia de URL codificado.

Métodos

create(ContainerCreateOptions)

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

Veja 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 contentor na conta especificada. Se o contentor com o mesmo nome já existir, não será alterado.

Veja 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 contentor especificado para eliminação. O contentor e quaisquer blobs nele contidos são posteriormente eliminados durante a libertação da memória.

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

deleteBlob(string, ContainerDeleteBlobOptions)

Marca o blob ou instantâneo especificado para eliminação. O blob é posteriormente eliminado durante a libertação da memória. Tenha em atenção que, para eliminar um blob, tem de eliminar todos os respetivos instantâneos. Pode eliminar ambos ao mesmo tempo com a operação Eliminar Blob.

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

deleteIfExists(ContainerDeleteMethodOptions)

Marca o contentor especificado para eliminação, se existir. O contentor e quaisquer blobs nele contidos são posteriormente eliminados durante a libertação da memória.

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

exists(ContainerExistsOptions)

Devolve true se o recurso de contentor 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. Os novos contentores vice-versa com o mesmo nome podem ser adicionados por outros clientes ou aplicações após a conclusão desta função.

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Devolve um iterador iterável assíncrono para localizar todos os blobs com etiqueta especificada no contentor especificado.

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

Exemplo com for await sintaxe:

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

Exemplo com 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 com 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 a utilizar 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}`);
  }
}
generateSasUrl(ContainerGenerateSasUrlOptions)

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

Gera um URI de Assinatura de Acesso Partilhado (SAS) do Serviço de Contentor de Blobs com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada 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 contentor especificado. As permissões indicam se os dados de contentor podem ser acedidos publicamente.

AVISO: a Data de JavaScript perderá potencialmente a precisão ao analisar startsOn e expira Em cadeias. 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 de lote.

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

getBlobClient(string)

Cria um BlobClient

getBlobLeaseClient(string)

Obtenha um BlobLeaseClient que gere as concessões no contentor.

getBlockBlobClient(string)

Cria um BlockBlobClient

getPageBlobClient(string)

Cria um PageBlobClient

getProperties(ContainerGetPropertiesOptions)

Devolve todos os metadados definidos pelo utilizador e as propriedades do sistema para o contentor especificado. Os dados devolvidos não incluem a lista de blobs do contentor.

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

AVISO: O metadata objeto devolvido na resposta terá as respetivas teclas em minúsculas, mesmo que tenham originalmente carateres em maiúsculas. Isto difere das chaves de metadados devolvidas pelo listContainers método blobServiceClient com a opção includeMetadata , que irá manter a sua caixa original.

listBlobsByHierarchy(string, ContainerListBlobsOptions)

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

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

Exemplo com 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 com 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 com 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 a utilizar 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)

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

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

Exemplo com 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 com 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 com 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 com 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 contentor especificado. As permissões indicam se os blobs num contentor podem ser acedidos publicamente.

Quando define permissões para um contentor, as permissões existentes são substituídas. Se não for fornecido qualquer acesso ou containerAcl, a ACL de contentor existente será removida.

Quando estabelece uma política de acesso armazenada num contentor, pode demorar até 30 segundos a entrar em vigor. Durante este intervalo, uma assinatura de acesso partilhado associada à política de acesso armazenado falhará com o código de estado 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 utilizador para o contentor especificado.

Se não for fornecida nenhuma opção ou se não forem definidos metadados no parâmetro, os metadados de contentor 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.

Atualizar um blob de blocos existente substitui quaisquer metadados existentes no blob. As atualizações parciais não são suportadas; o conteúdo do blob existente é substituído pelo novo conteúdo. Para efetuar uma atualização parcial de um blob de blocos, utilize stageBlock e commitBlockList.

Este é um método de carregamento não paralelo, utilize uploadFile, uploadStream ou uploadBrowserData para um melhor 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 do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.

new ContainerClient(url: string, pipeline: PipelineLike)

Parâmetros

url

string

Uma cadeia de URL a apontar para o contentor do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?sasString".

pipeline
PipelineLike

Chame newPipeline() para criar um pipeline predefinido ou forneça um pipeline personalizado.

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

Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.

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

Parâmetros

url

string

Uma cadeia de URL a apontar para o contentor do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos para o serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

options
StoragePipelineOptions

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

ContainerClient(string, string, StoragePipelineOptions)

Cria uma instância do ContainerClient.

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

Parâmetros

connectionString

string

Cadeia de ligação de conta ou uma cadeia de ligação SAS de uma conta de armazenamento do Azure. [ Nota - a cadeia de ligação da conta só pode ser utilizada no NODE.JS runtime. ] Exemplo de cadeia de ligação de conta -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemplo de cadeia de ligaçã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 contentor.

options
StoragePipelineOptions

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

Detalhes de Propriedade

containerName

O nome do contentor.

string containerName

Valor de Propriedade

string

Detalhes da Propriedade Herdada

accountName

accountName: string

Valor de Propriedade

string

Herdado de StorageClient.accountName

credential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos para o serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor de Propriedade

Herdado de StorageClient.credential

url

Valor da cadeia de URL codificado.

url: string

Valor de Propriedade

string

Herdado de StorageClient.url

Detalhes de Método

create(ContainerCreateOptions)

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

Veja 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 de Criação de Contentores.

Utilização de exemplo:

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 contentor na conta especificada. Se o contentor com o mesmo nome já existir, não será alterado.

Veja 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 contentor especificado para eliminação. O contentor e quaisquer blobs nele contidos são posteriormente eliminados durante a libertação da memória.

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

Devoluções

deleteBlob(string, ContainerDeleteBlobOptions)

Marca o blob ou instantâneo especificado para eliminação. O blob é posteriormente eliminado durante a libertação da memória. Tenha em atenção que, para eliminar um blob, tem de eliminar todos os respetivos instantâneos. Pode eliminar ambos ao mesmo tempo com a operação Eliminar 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 Eliminação de Blobs.

Devoluções

Dados de resposta de eliminação de blobs de blocos.

deleteIfExists(ContainerDeleteMethodOptions)

Marca o contentor especificado para eliminação, se existir. O contentor e quaisquer blobs nele contidos são posteriormente eliminados durante a libertação da memória.

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

Devoluções

exists(ContainerExistsOptions)

Devolve true se o recurso de contentor 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. Os novos contentores vice-versa com o mesmo nome podem ser adicionados por outros clientes ou aplicações após a conclusão desta função.

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

Parâmetros

Devoluções

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Devolve um iterador iterável assíncrono para localizar todos os blobs com etiqueta especificada no contentor especificado.

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

Exemplo com for await sintaxe:

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

Exemplo com 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 com 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 a utilizar 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 ao autor da chamada consultar blobs cujas etiquetas correspondem a uma determinada expressão. A expressão especificada tem de ser avaliada como verdadeira para que um blob seja devolvido 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, apenas um subconjunto da sintaxe do filtro OData é suportado no serviço Blob.

options
ContainerFindBlobByTagsOptions

Opções para localizar blobs por etiquetas.

Devoluções

generateSasUrl(ContainerGenerateSasUrlOptions)

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

Gera um URI de Assinatura de Acesso Partilhado (SAS) do Serviço de Contentor de Blobs com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada 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 de SAS que consiste no URI para o recurso representado por este cliente, seguido do token de SAS gerado.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Obtém as permissões para o contentor especificado. As permissões indicam se os dados de contentor podem ser acedidos publicamente.

AVISO: a Data de JavaScript perderá potencialmente a precisão ao analisar startsOn e expira Em cadeias. 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 Obter Política de Acesso do Contentor.

Devoluções

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 realizar operações de lote.

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

function getBlobBatchClient(): BlobBatchClient

Devoluções

Um novo objeto BlobBatchClient para este contentor.

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 do blob especificado.

getBlobLeaseClient(string)

Obtenha um BlobLeaseClient que gere as concessões no contentor.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Parâmetros

proposeLeaseId

string

ID de concessão proposta inicial.

Devoluções

Um novo objeto BlobLeaseClient para gerir concessões no contentor.

getBlockBlobClient(string)

Cria um BlockBlobClient

function getBlockBlobClient(blobName: string): BlockBlobClient

Parâmetros

blobName

string

Um nome de blob de blocos

Utilização de exemplo:

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

Devoluções

getProperties(ContainerGetPropertiesOptions)

Devolve todos os metadados definidos pelo utilizador e as propriedades do sistema para o contentor especificado. Os dados devolvidos não incluem a lista de blobs do contentor.

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

AVISO: O metadata objeto devolvido na resposta terá as respetivas teclas em minúsculas, mesmo que tenham originalmente carateres em maiúsculas. Isto difere das chaves de metadados devolvidas pelo listContainers método blobServiceClient com a opção includeMetadata , que irá manter a sua caixa original.

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

Parâmetros

options
ContainerGetPropertiesOptions

Opções para a operação Obter Propriedades do Contentor.

Devoluções

listBlobsByHierarchy(string, ContainerListBlobsOptions)

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

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

Exemplo com 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 com 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 com 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 a utilizar 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 caráter ou cadeia utilizado para definir a hierarquia virtual

options
ContainerListBlobsOptions

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

Devoluções

listBlobsFlat(ContainerListBlobsOptions)

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

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

Exemplo com 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 com 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 com 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 com 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.

Devoluções

Um asyncIterableIterator que suporta a paginação.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Define as permissões para o contentor especificado. As permissões indicam se os blobs num contentor podem ser acedidos publicamente.

Quando define permissões para um contentor, as permissões existentes são substituídas. Se não for fornecido qualquer acesso ou containerAcl, a ACL de contentor existente será removida.

Quando estabelece uma política de acesso armazenada num contentor, pode demorar até 30 segundos a entrar em vigor. Durante este intervalo, uma assinatura de acesso partilhado associada à política de acesso armazenado falhará com o código de estado 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 contentor.

containerAcl

SignedIdentifier[]

Matriz de elementos com um ID exclusivo e detalhes da política de acesso.

options
ContainerSetAccessPolicyOptions

Opções para a operação de Política de Acesso do Conjunto de Contentores.

Devoluções

setMetadata(Metadata, ContainerSetMetadataOptions)

Define um ou mais pares nome-valor definidos pelo utilizador para o contentor especificado.

Se não for fornecida nenhuma opção ou se não forem definidos metadados no parâmetro, os metadados de contentor 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 este valor. Se não for fornecido nenhum valor, os metadados existentes serão removidos.

options
ContainerSetMetadataOptions

Opções para a operação de Metadados do Conjunto de Contentores.

Devoluções

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

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

Atualizar um blob de blocos existente substitui quaisquer metadados existentes no blob. As atualizações parciais não são suportadas; o conteúdo do blob existente é substituído pelo novo conteúdo. Para efetuar uma atualização parcial de um blob de blocos, utilize stageBlock e commitBlockList.

Este é um método de carregamento não paralelo, utilize uploadFile, uploadStream ou uploadBrowserData para um melhor 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 criar ou atualizar.

body
HttpRequestBody

Blob, cadeia, ArrayBuffer, ArrayBufferView ou uma função que devolve um novo fluxo Legível cujo desvio é do início da origem de dados.

contentLength

number

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

options
BlockBlobUploadOptions

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

Devoluções

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

Bloquear dados de resposta de carregamento de Blobs e a instância blockBlobClient correspondente.