Compartilhar via


BlobClient class

Um BlobClient representa uma URL para um blob de Armazenamento do Azure; o blob pode ser um blob de blocos, blob de acréscimo ou blob de página.

Extends

StorageClient

Construtores

BlobClient(string, PipelineLike)

Cria uma instância do BlobClient. Esse método aceita uma URL codificada ou UMA URL não codificada apontando para um blob. 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.

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

Cria uma instância do BlobClient. Esse método aceita uma URL codificada ou UMA URL não codificada apontando para um blob. 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.

BlobClient(string, string, string, StoragePipelineOptions)

Cria uma instância do BlobClient da cadeia de conexão.

Propriedades

containerName

O nome do contêiner de armazenamento ao qual o blob está associado.

name

O nome do blob.

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

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Anula uma operação de Blob de Cópia assíncrona pendente e deixa um blob de destino com comprimento zero e metadados completos. Versão 2012-02-12 e mais recente.

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

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Copia de forma assíncrona um blob para um destino dentro da conta de armazenamento. Esse método retorna um poller de operação de execução longa que permite que você aguarde indefinidamente até que a cópia seja concluída. Você também pode cancelar uma cópia antes que ela seja concluída chamando cancelOperation no poller. Observe que o retorno de chamada onProgress não será invocado se a operação for concluída na primeira solicitação e a tentativa de cancelar uma cópia concluída resultará em um erro sendo gerado.

Na versão 2012-02-12 e posterior, a origem de uma operação de Blob de Cópia pode ser um blob confirmado em qualquer conta de armazenamento do Azure. A partir da versão 2015-02-21, a origem de uma operação de Blob de Cópia pode ser um arquivo do Azure em qualquer conta de armazenamento do Azure. Somente contas de armazenamento criadas em ou após 7 de junho de 2012 permitem que a operação Copiar Blob copie de outra conta de armazenamento.

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

Exemplo usando sondagem automática:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

Exemplo usando sondagem manual:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

Exemplo usando atualizações de progresso:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

Exemplo usando um intervalo de sondagem alterado (padrão de 15 segundos):

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

Exemplo usando o cancelamento de cópia:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
createSnapshot(BlobCreateSnapshotOptions)

Cria um instantâneo somente leitura de um blob.

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

delete(BlobDeleteOptions)

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(BlobDeleteOptions)

Marca o blob ou instantâneo especificado para exclusão se ele existir. 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

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Exclua a política de immutablility no blob.

download(number, number, BlobDownloadOptions)

Lê ou baixa um blob do sistema, incluindo seus metadados e propriedades. Você também pode chamar Get Blob para ler um instantâneo.

  • Em Node.js, os dados retornam em um fluxo legível readableStreamBody
  • Em navegadores, os dados retornam em um blobBody de promessa

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

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixa todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até um gigabyte em sistemas de 32 bits ou cerca de dois gigabytes em sistemas de 64 bits devido a limitações de Node.js/V8. Para blobs maiores que esse tamanho, considere downloadToFile.

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixa todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até um gigabyte em sistemas de 32 bits ou cerca de dois gigabytes em sistemas de 64 bits devido a limitações de Node.js/V8. Para blobs maiores que esse tamanho, considere downloadToFile.

downloadToFile(string, number, number, BlobDownloadOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em um arquivo local. Falhará se o caminho de arquivo fornecido já for encerrado. Deslocamento e contagem são opcionais, passam 0 e indefinidos, respectivamente, para baixar o blob inteiro.

exists(BlobExistsOptions)

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

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

generateSasStringToSign(BlobGenerateSasUrlOptions)

Disponível apenas para BlobClient 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 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(BlobGenerateSasUrlOptions)

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

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço 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(BlobGenerateSasUrlOptions, UserDelegationKey)

Disponível apenas para BlobClient 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 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(BlobGenerateSasUrlOptions, UserDelegationKey)

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço 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

getAccountInfo(BlobGetAccountInfoOptions)

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()

Cria um objeto AppendBlobClient.

getBlobLeaseClient(string)

Obtenha um blobLeaseClient que gerencia as concessões no blob.

getBlockBlobClient()

Cria um objeto BlockBlobClient.

getPageBlobClient()

Cria um objeto PageBlobClient.

getProperties(BlobGetPropertiesOptions)

Retorna todos os metadados definidos pelo usuário, propriedades HTTP padrão e propriedades do sistema para o blob. Ele não retorna o conteúdo do blob.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-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 pelos métodos de ContainerClient que listam blobs usando a opção includeMetadata, que manterá sua caixa original.

getTags(BlobGetTagsOptions)

Obtém as marcas associadas ao blob subjacente.

setAccessTier(string, BlobSetTierOptions)

Define a camada em um blob. A operação é permitida em um blob de páginas em uma conta de armazenamento premium e em um blob de blocos em uma conta de armazenamento de blobs (somente armazenamento com redundância local). A camada de um blob de página premium determina o tamanho permitido, o IOPS e a largura de banda do blob. A camada de um blob de blocos determina o tipo de armazenamento Hot/Cool/Archive. Essa operação não atualiza a ETag do blob.

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

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Define as propriedades do sistema no blob.

Se nenhum valor for fornecido ou nenhum valor fornecido para os cabeçalhos HTTP de blob especificados, esses cabeçalhos HTTP de blob sem um valor serão limpos.

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

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Defina a política de imutabilidade no blob.

setLegalHold(boolean, BlobSetLegalHoldOptions)

Defina a retenção legal no blob.

setMetadata(Metadata, BlobSetMetadataOptions)

Define metadados definidos pelo usuário para o blob especificado como um ou mais pares nome-valor.

Se nenhuma opção for fornecida ou nenhum metadados definido no parâmetro, os metadados de blob serão removidos.

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

setTags(Tags, BlobSetTagsOptions)

Define marcas no blob subjacente. Um blob pode ter até 10 marcas. As teclas de marca devem ter entre 1 e 128 caracteres. Os valores de marca devem ter entre 0 e 256 caracteres. Caracteres válidos de chave de marca e valor incluem letras minúsculas e maiúsculas, dígitos (0-9), espaço (' '), mais ('+'), menos ('-'), ponto ('.'), barra ('/'), dois-pontos (':'), iguais ('=') e sublinhado ('_') .

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

A operação de CÓPIA Síncrona da URL copia um blob ou um recurso da Internet para um novo blob. Ele não retornará uma resposta até que a cópia seja concluída.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

undelete(BlobUndeleteOptions)

Restaura o conteúdo e os metadados do blob de exclusão reversível e de todos os instantâneos de exclusão reversível associados. Há suporte para o Undelete Blob somente na versão 2017-07-29 ou posterior.

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

withSnapshot(string)

Cria um novo objeto BlobClient idêntico à origem, mas com o carimbo de data/hora de instantâneo especificado. Forneça "" removerá o instantâneo e retornará um Cliente para o blob base.

withVersion(string)

Cria um novo objeto BlobClient apontando para uma versão desse blob. Forneça "" removerá a versionId e retornará um Cliente para o blob base.

Detalhes do construtor

BlobClient(string, PipelineLike)

Cria uma instância do BlobClient. Esse método aceita uma URL codificada ou UMA URL não codificada apontando para um blob. 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 BlobClient(url: string, pipeline: PipelineLike)

Parâmetros

url

string

Uma cadeia de caracteres de URL apontando para o blob do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer/blob". Você pode acrescentar uma SAS se estiver usando AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer/blob?sasString". Esse método aceita uma URL codificada ou UMA URL não codificada apontando para um blob. A cadeia de caracteres de URL codificada NÃO será escapada duas vezes, somente caracteres especiais no caminho da URL serão escapados. No entanto, se um nome de blob incluir? ou %, o nome do blob deve ser codificado na URL. Como um blob chamado "my?blob%", a URL deve ser "https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25".

pipeline
PipelineLike

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

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

Cria uma instância do BlobClient. Esse método aceita uma URL codificada ou UMA URL não codificada apontando para um blob. 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 BlobClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

Parâmetros

url

string

Uma cadeia de caracteres do cliente apontando para o serviço de blob do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net". Você pode acrescentar uma SAS se estiver usando AnonymousCredential, como "https://myaccount.blob.core.windows.net?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.

BlobClient(string, string, string, StoragePipelineOptions)

Cria uma instância do BlobClient da cadeia de conexão.

new BlobClient(connectionString: string, containerName: string, blobName: 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.

blobName

string

Nome do blob.

options
StoragePipelineOptions

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

Detalhes da propriedade

containerName

O nome do contêiner de armazenamento ao qual o blob está associado.

string containerName

Valor da propriedade

string

name

O nome do blob.

string name

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

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Anula uma operação de Blob de Cópia assíncrona pendente e deixa um blob de destino com comprimento zero e metadados completos. Versão 2012-02-12 e mais recente.

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

function abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptions): Promise<BlobAbortCopyFromURLResponse>

Parâmetros

copyId

string

ID da operação copiar da URL.

options
BlobAbortCopyFromURLOptions

Opções opcionais para a operação Desativar Cópia da URL do Blob.

Retornos

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Copia de forma assíncrona um blob para um destino dentro da conta de armazenamento. Esse método retorna um poller de operação de execução longa que permite que você aguarde indefinidamente até que a cópia seja concluída. Você também pode cancelar uma cópia antes que ela seja concluída chamando cancelOperation no poller. Observe que o retorno de chamada onProgress não será invocado se a operação for concluída na primeira solicitação e a tentativa de cancelar uma cópia concluída resultará em um erro sendo gerado.

Na versão 2012-02-12 e posterior, a origem de uma operação de Blob de Cópia pode ser um blob confirmado em qualquer conta de armazenamento do Azure. A partir da versão 2015-02-21, a origem de uma operação de Blob de Cópia pode ser um arquivo do Azure em qualquer conta de armazenamento do Azure. Somente contas de armazenamento criadas em ou após 7 de junho de 2012 permitem que a operação Copiar Blob copie de outra conta de armazenamento.

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

Exemplo usando sondagem automática:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

Exemplo usando sondagem manual:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

Exemplo usando atualizações de progresso:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

Exemplo usando um intervalo de sondagem alterado (padrão de 15 segundos):

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

Exemplo usando o cancelamento de cópia:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
function beginCopyFromURL(copySource: string, options?: BlobBeginCopyFromURLOptions): Promise<PollerLikeWithCancellation<PollOperationState<BlobBeginCopyFromURLResponse>, BlobBeginCopyFromURLResponse>>

Parâmetros

copySource

string

url para o Blob/Arquivo do Azure de origem.

options
BlobBeginCopyFromURLOptions

Opções opcionais para a operação de URL Iniciar Cópia do Blob.

Retornos

createSnapshot(BlobCreateSnapshotOptions)

Cria um instantâneo somente leitura de um blob.

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

function createSnapshot(options?: BlobCreateSnapshotOptions): Promise<BlobCreateSnapshotResponse>

Parâmetros

options
BlobCreateSnapshotOptions

Opções opcionais para a operação Criar Instantâneo de Blob.

Retornos

delete(BlobDeleteOptions)

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 delete(options?: BlobDeleteOptions): Promise<BlobDeleteResponse>

Parâmetros

options
BlobDeleteOptions

Opções opcionais para a operação de Exclusão de Blobs.

Retornos

deleteIfExists(BlobDeleteOptions)

Marca o blob ou instantâneo especificado para exclusão se ele existir. 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 deleteIfExists(options?: BlobDeleteOptions): Promise<BlobDeleteIfExistsResponse>

Parâmetros

options
BlobDeleteOptions

Opções opcionais para a operação de Exclusão de Blobs.

Retornos

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Exclua a política de immutablility no blob.

function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions): Promise<BlobDeleteImmutabilityPolicyResponse>

Parâmetros

options
BlobDeleteImmutabilityPolicyOptions

Opções opcionais para excluir a política de imutabilidade no blob.

Retornos

download(number, number, BlobDownloadOptions)

Lê ou baixa um blob do sistema, incluindo seus metadados e propriedades. Você também pode chamar Get Blob para ler um instantâneo.

  • Em Node.js, os dados retornam em um fluxo legível readableStreamBody
  • Em navegadores, os dados retornam em um blobBody de promessa

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

function download(offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

Parâmetros

offset

number

A partir da qual a posição do blob será baixada, maior ou igual a 0

count

number

Quantos dados serão baixados, maior que 0. Será baixado até o final quando indefinido

options
BlobDownloadOptions

Opções opcionais para a operação de Download de Blobs.

Uso de exemplo (Node.js):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await streamToBuffer(downloadBlockBlobResponse.readableStreamBody);
console.log("Downloaded blob content:", downloaded.toString());

async function streamToBuffer(readableStream) {
return new Promise((resolve, reject) => {
const chunks = [];
readableStream.on("data", (data) => {
chunks.push(data instanceof Buffer ? data : Buffer.from(data));
});
readableStream.on("end", () => {
resolve(Buffer.concat(chunks));
});
readableStream.on("error", reject);
});
}

Uso de exemplo (navegador):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await blobToString(await downloadBlockBlobResponse.blobBody);
console.log(
  "Downloaded blob content",
  downloaded
);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}

Retornos

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixa todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até um gigabyte em sistemas de 32 bits ou cerca de dois gigabytes em sistemas de 64 bits devido a limitações de Node.js/V8. Para blobs maiores que esse tamanho, considere downloadToFile.

function downloadToBuffer(buffer: Buffer, offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

Parâmetros

buffer

Buffer

O buffer a ser preenchido deve ter um comprimento maior que a contagem

offset

number

De qual posição do blob de blocos será baixado(em bytes)

count

number

Quantos dados(em bytes) serão baixados. Será baixado até o final ao passar indefinido

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Retornos

Promise<Buffer>

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixa todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até um gigabyte em sistemas de 32 bits ou cerca de dois gigabytes em sistemas de 64 bits devido a limitações de Node.js/V8. Para blobs maiores que esse tamanho, considere downloadToFile.

function downloadToBuffer(offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

Parâmetros

offset

number

De qual posição do blob de blocos será baixado(em bytes)

count

number

Quantos dados(em bytes) serão baixados. Será baixado até o final ao passar indefinido

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Retornos

Promise<Buffer>

downloadToFile(string, number, number, BlobDownloadOptions)

DISPONÍVEL APENAS EM NODE.JS RUNTIME.

Baixa um Blob do Azure em um arquivo local. Falhará se o caminho de arquivo fornecido já for encerrado. Deslocamento e contagem são opcionais, passam 0 e indefinidos, respectivamente, para baixar o blob inteiro.

function downloadToFile(filePath: string, offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

Parâmetros

filePath

string

offset

number

De qual posição do blob de blocos será baixado.

count

number

Quantos dados serão baixados. Será baixado até o final ao passar indefinido.

options
BlobDownloadOptions

Opções para opções de download de Blob.

Retornos

Os dados de resposta para a operação de download de blob, mas com readableStreamBody definido como indefinido, pois seu conteúdo já é lido e gravado em um arquivo local no caminho especificado.

exists(BlobExistsOptions)

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

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

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

Parâmetros

options
BlobExistsOptions

opções para a operação Exists.

Retornos

Promise<boolean>

generateSasStringToSign(BlobGenerateSasUrlOptions)

Disponível apenas para BlobClient 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 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: BlobGenerateSasUrlOptions): string

Parâmetros

options
BlobGenerateSasUrlOptions

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(BlobGenerateSasUrlOptions)

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

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço 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: BlobGenerateSasUrlOptions): Promise<string>

Parâmetros

options
BlobGenerateSasUrlOptions

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(BlobGenerateSasUrlOptions, UserDelegationKey)

Disponível apenas para BlobClient 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 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: BlobGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): string

Parâmetros

options
BlobGenerateSasUrlOptions

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(BlobGenerateSasUrlOptions, UserDelegationKey)

Gera um URI de SAS (Assinatura de Acesso Compartilhado) do Serviço 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: BlobGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): Promise<string>

Parâmetros

options
BlobGenerateSasUrlOptions

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.

getAccountInfo(BlobGetAccountInfoOptions)

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?: BlobGetAccountInfoOptions): Promise<BlobGetAccountInfoResponse>

Parâmetros

options
BlobGetAccountInfoOptions

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()

Cria um objeto AppendBlobClient.

function getAppendBlobClient(): AppendBlobClient

Retornos

getBlobLeaseClient(string)

Obtenha um blobLeaseClient que gerencia as concessões no blob.

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

getBlockBlobClient()

Cria um objeto BlockBlobClient.

function getBlockBlobClient(): BlockBlobClient

Retornos

getPageBlobClient()

Cria um objeto PageBlobClient.

function getPageBlobClient(): PageBlobClient

Retornos

getProperties(BlobGetPropertiesOptions)

Retorna todos os metadados definidos pelo usuário, propriedades HTTP padrão e propriedades do sistema para o blob. Ele não retorna o conteúdo do blob.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-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 pelos métodos de ContainerClient que listam blobs usando a opção includeMetadata, que manterá sua caixa original.

function getProperties(options?: BlobGetPropertiesOptions): Promise<BlobGetPropertiesResponse>

Parâmetros

options
BlobGetPropertiesOptions

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

Retornos

getTags(BlobGetTagsOptions)

Obtém as marcas associadas ao blob subjacente.

function getTags(options?: BlobGetTagsOptions): Promise<BlobGetTagsResponse>

Parâmetros

Retornos

setAccessTier(string, BlobSetTierOptions)

Define a camada em um blob. A operação é permitida em um blob de páginas em uma conta de armazenamento premium e em um blob de blocos em uma conta de armazenamento de blobs (somente armazenamento com redundância local). A camada de um blob de página premium determina o tamanho permitido, o IOPS e a largura de banda do blob. A camada de um blob de blocos determina o tipo de armazenamento Hot/Cool/Archive. Essa operação não atualiza a ETag do blob.

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

function setAccessTier(tier: string, options?: BlobSetTierOptions): Promise<BlobSetTierResponse>

Parâmetros

tier

string

A camada a ser definida no blob. Os valores válidos são Hot, Cool ou Archive.

options
BlobSetTierOptions

Opções opcionais para a operação de Camada de Conjunto de Blobs.

Retornos

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Define as propriedades do sistema no blob.

Se nenhum valor for fornecido ou nenhum valor fornecido para os cabeçalhos HTTP de blob especificados, esses cabeçalhos HTTP de blob sem um valor serão limpos.

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

function setHTTPHeaders(blobHTTPHeaders?: BlobHTTPHeaders, options?: BlobSetHTTPHeadersOptions): Promise<BlobSetHTTPHeadersResponse>

Parâmetros

blobHTTPHeaders
BlobHTTPHeaders

Se nenhum valor for fornecido ou nenhum valor fornecido para os cabeçalhos HTTP de blob especificados, esses cabeçalhos HTTP de blob sem um valor serão limpos. Um cabeçalho comum a ser definido é blobContentType habilitando o navegador para fornecer funcionalidade com base no tipo de arquivo.

options
BlobSetHTTPHeadersOptions

Opções opcionais para a operação Defina Cabeçalhos HTTP do Blob.

Retornos

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Defina a política de imutabilidade no blob.

function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions): Promise<BlobSetImmutabilityPolicyResponse>

Parâmetros

immutabilityPolicy
BlobImmutabilityPolicy
options
BlobSetImmutabilityPolicyOptions

Opções opcionais para definir a política de imutabilidade no blob.

Retornos

setLegalHold(boolean, BlobSetLegalHoldOptions)

Defina a retenção legal no blob.

function setLegalHold(legalHoldEnabled: boolean, options?: BlobSetLegalHoldOptions): Promise<BlobSetLegalHoldResponse>

Parâmetros

legalHoldEnabled

boolean

options
BlobSetLegalHoldOptions

Opções opcionais para definir a retenção legal no blob.

Retornos

setMetadata(Metadata, BlobSetMetadataOptions)

Define metadados definidos pelo usuário para o blob especificado como um ou mais pares nome-valor.

Se nenhuma opção for fornecida ou nenhum metadados definido no parâmetro, os metadados de blob serão removidos.

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

function setMetadata(metadata?: Metadata, options?: BlobSetMetadataOptions): Promise<BlobSetMetadataResponse>

Parâmetros

metadata
Metadata

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

options
BlobSetMetadataOptions

Opções opcionais para definir a operação de metadados.

Retornos

setTags(Tags, BlobSetTagsOptions)

Define marcas no blob subjacente. Um blob pode ter até 10 marcas. As teclas de marca devem ter entre 1 e 128 caracteres. Os valores de marca devem ter entre 0 e 256 caracteres. Caracteres válidos de chave de marca e valor incluem letras minúsculas e maiúsculas, dígitos (0-9), espaço (' '), mais ('+'), menos ('-'), ponto ('.'), barra ('/'), dois-pontos (':'), iguais ('=') e sublinhado ('_') .

function setTags(tags: Tags, options?: BlobSetTagsOptions): Promise<BlobSetTagsResponse>

Parâmetros

tags
Tags

Retornos

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

A operação de CÓPIA Síncrona da URL copia um blob ou um recurso da Internet para um novo blob. Ele não retornará uma resposta até que a cópia seja concluída.

Confira https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

function syncCopyFromURL(copySource: string, options?: BlobSyncCopyFromURLOptions): Promise<BlobCopyFromURLResponse>

Parâmetros

copySource

string

A URL de origem da qual copiar, SAS (Assinatura de Acesso Compartilhado) talvez seja necessária para autenticação

Retornos

undelete(BlobUndeleteOptions)

Restaura o conteúdo e os metadados do blob de exclusão reversível e de todos os instantâneos de exclusão reversível associados. Há suporte para o Undelete Blob somente na versão 2017-07-29 ou posterior.

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

function undelete(options?: BlobUndeleteOptions): Promise<BlobUndeleteResponse>

Parâmetros

options
BlobUndeleteOptions

Opções opcionais para a operação Desdelete de Blob.

Retornos

withSnapshot(string)

Cria um novo objeto BlobClient idêntico à origem, mas com o carimbo de data/hora de instantâneo especificado. Forneça "" removerá o instantâneo e retornará um Cliente para o blob base.

function withSnapshot(snapshot: string): BlobClient

Parâmetros

snapshot

string

O carimbo de data/hora do instantâneo.

Retornos

Um novo objeto BlobClient idêntico à origem, mas com o carimbo de data/hora de instantâneo especificado

withVersion(string)

Cria um novo objeto BlobClient apontando para uma versão desse blob. Forneça "" removerá a versionId e retornará um Cliente para o blob base.

function withVersion(versionId: string): BlobClient

Parâmetros

versionId

string

A versionId.

Retornos

Um novo objeto BlobClient apontando para a versão desse blob.