Compartilhar via


BlockBlobClient class

BlockBlobClient define um conjunto de operações aplicáveis a blobs de blocos.

Extends

Construtores

BlockBlobClient(string, PipelineLike)

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

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

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

BlockBlobClient(string, string, string, StoragePipelineOptions)

Cria uma instância de BlockBlobClient.

Propriedades

accountName
containerName

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

credential

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

name

O nome do blob.

url

Valor da cadeia de caracteres de URL codificada.

Métodos

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

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

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Copia de forma assíncrona um blob para um destino dentro da conta de armazenamento. Esse método retorna um sondador de operação de execução prolongada 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 o poller. Observe que o retorno de chamada onProgress não será invocado se a operação for concluída na primeira solicitação e tentar 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 Copiar Blob 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 Copiar Blob pode ser um arquivo do Azure em qualquer conta de armazenamento do Azure. Apenas as contas de armazenamento criadas a partir de 7 de junho de 2012 permitem que a operação Copy Blob faça cópias de outra conta de armazenamento.

commitBlockList(string[], BlockBlobCommitBlockListOptions)

Grava um blob especificando a lista de IDs de bloco que constituem o blob. Para ser gravado como parte de um blob, um bloco deve ter sido gravado com êxito no servidor em uma operação <xref:stageBlock> anterior. Você pode chamar <xref:commitBlockList> para atualizar um blob carregando apenas os blocos que foram alterados e depois confirmando os blocos novos e existentes em conjunto. Todos os blocos não especificados na lista de blocos e excluídos permanentemente.

createSnapshot(BlobCreateSnapshotOptions)

Cria um instantâneo somente leitura de um blob.

delete(BlobDeleteOptions)

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

deleteIfExists(BlobDeleteOptions)

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

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Exclua a política immutablility no blob.

download(number, number, BlobDownloadOptions)

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

  • Em Node.js, os dados retornam em um fluxo legívelStreamBody legível
  • Em navegadores, os dados retornam em um blobBody de promessa
downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixando todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até cerca de 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 <xref:downloadToFile>.

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixando todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até cerca de 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 <xref:downloadToFile>.

downloadToFile(string, number, number, BlobDownloadOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. 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, passe 0 e indefinidos, respectivamente, para baixar todo o blob.

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.

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.

getAppendBlobClient()

Cria um objeto AppendBlobClient.

getBlobLeaseClient(string)

Obtenha um <xref:BlobLeaseClient> que gerencia as concessões no blob.

getBlockBlobClient()

Cria um objeto BlockBlobClient.

getBlockList(BlockListType, BlockBlobGetBlockListOptions)

Retorna a lista de blocos que foram carregados como parte de um blob de blocos usando o filtro de lista de blocos especificado.

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. Ela não retorna o conteúdo do blob.

getTags(BlobGetTagsOptions)

Obtém as marcas associadas ao blob subjacente.

query(string, BlockBlobQueryOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. Consulta rápida para um blob formatado em JSON ou CSV.

Uso de exemplo (Node.js):

// Query and convert a blob to a string
const queryBlockBlobResponse = await blockBlobClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryBlockBlobResponse.readableStreamBody)).toString();
console.log("Query blob content:", downloaded);

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);
  });
}
setAccessTier(BlockBlobTier | PremiumPageBlobTier | 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, o IOPS e a largura de banda permitidos 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.

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.

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Defina a política de immutablility 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 de nome-valor. Se nenhuma opção for fornecida ou nenhum metadado definido no parâmetro , os metadados do blob serão removidos.

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. Os caracteres de chave e valor de marca válidos incluem letras minúsculas e maiúsculas, dígitos (0-9), espaço (' '), mais ('+'), menos ('-'), ponto final ('.'), barra ('/'), dois-pontos (':'), igual a ('=') e sublinhado ('_') .

stageBlock(string, HttpRequestBody, number, BlockBlobStageBlockOptions)

Carrega o bloco especificado na "área de preparo" do blob de blocos para ser confirmado posteriormente por uma chamada para commitBlockList.

stageBlockFromURL(string, string, number, number, BlockBlobStageBlockFromURLOptions)

A operação Bloco de Estágio da URL cria um novo bloco a ser confirmado como parte de um blob em que o conteúdo é lido de uma URL. Essa API está disponível a partir da versão 2018-03-28.

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

A operação síncrona Copiar 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.

syncUploadFromURL(string, BlockBlobSyncUploadFromURLOptions)

Cria um novo Blob de Blocos em que o conteúdo do blob é lido de uma determinada URL. Essa API tem suporte a partir da versão 2020-04-08. Não há suporte para atualizações parciais com Put Blob da URL; o conteúdo de um blob existente é substituído pelo conteúdo do novo blob. Para executar atualizações parciais no conteúdo de um blob de blocos usando uma URL de origem, use <xref:stageBlockFromURL> e <xref:commitBlockList>.

undelete(BlobUndeleteOptions)

Restaura o conteúdo e os metadados do blob com exclusão reversível e de todos os instantâneos excluídos temporariamente associados. O blob de exclusão tem suporte apenas na versão 2017-07-29 ou posterior.

upload(HttpRequestBody, number, BlockBlobUploadOptions)

Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente. A atualização de um blob de blocos existente substitui todos os metadados existentes no blob. Não há suporte para atualizações parciais; o conteúdo do blob existente é substituído pelo novo conteúdo. Para executar uma atualização parcial de um blob de blocos, use <xref:stageBlock> e <xref:commitBlockList>. Esse é um método de carregamento não paralelo, use <xref:uploadFile><xref:uploadStream> ou <xref:uploadBrowserData> para melhorar o desempenho com o carregamento de simultaneidade.

uploadBrowserData(Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

DISPONÍVEL SOMENTE EM NAVEGADORES. Carrega um objeto Blob/File/ArrayBuffer/ArrayBufferView do navegador para bloquear o blob.

Quando o tamanho do buffer for menor ou igual a 256 MB, esse método usará uma chamada de upload para concluir o upload. Caso contrário, esse método chamará <xref:stageBlock> para carregar blocos e, por fim, chamará <xref:commitBlockList> para confirmar a lista de blocos.

Uma opção comum <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> a ser definida é blobContentType, permitindo que o navegador forneça funcionalidade com base no tipo de arquivo.

uploadData(Buffer | Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Carrega um objeto Buffer(Node.js)/Blob(browsers)/ArrayBuffer/ArrayBufferView em um BlockBlob. Quando o comprimento dos dados não for maior do que o especificado <xref:BlockBlobParallelUploadOptions.maxSingleShotSize> (o padrão é <xref:BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES>), esse método usará uma <xref:upload> chamada para concluir o upload. Caso contrário, esse método chamará <xref:stageBlock> para carregar blocos e, por fim, chamará <xref:commitBlockList> para confirmar a lista de blocos.

Uma opção comum <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> a ser definida é blobContentType, permitindo que o navegador forneça funcionalidade com base no tipo de arquivo.

uploadFile(string, BlockBlobParallelUploadOptions)

DISPONÍVEL SOMENTE EM NODE.JS RUNTIME. Carrega um arquivo local em blocos para um blob de blocos.

Quando o tamanho do arquivo for menor ou igual a 256 MB, esse método usará uma chamada de upload para concluir o upload. Caso contrário, esse método chamará stageBlock para carregar blocos e, por fim, chamará commitBlockList para confirmar a lista de blocos.

uploadStream(Readable, number, number, BlockBlobUploadStreamOptions)

DISPONÍVEL SOMENTE EM NODE.JS RUNTIME. Carrega um fluxo de Node.js legível no blob de blocos.

DICAS DE MELHORIA DE DESEMPENHO:

  • O fluxo de entrada highWaterMark é melhor para definir um mesmo valor com o parâmetro bufferSize, o que evitará operações Buffer.concat().
withSnapshot(string)

Cria um novo objeto BlockBlobClient idêntico à origem, mas com o carimbo de data/hora do instantâneo especificado. Fornecer "" removerá o instantâneo e retornará uma URL para o blob de 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 de base.

Detalhes do construtor

BlockBlobClient(string, PipelineLike)

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

new BlockBlobClient(url: string, pipeline: PipelineLike)

Parâmetros

url

string

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

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

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

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

Parâmetros

url

string

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

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

options
StoragePipelineOptions

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

BlockBlobClient(string, string, string, StoragePipelineOptions)

Cria uma instância de BlockBlobClient.

new BlockBlobClient(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 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.

blobName

string

Nome do blob.

options
StoragePipelineOptions

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

Detalhes da propriedade

accountName

accountName: string

Valor da propriedade

string

containerName

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

string containerName

Valor da propriedade

string

credential

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

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor da propriedade

name

O nome do blob.

string name

Valor da propriedade

string

url

Valor da cadeia de caracteres de URL codificada.

url: string

Valor da propriedade

string

Detalhes do método

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

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

function abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptions)

Parâmetros

copyId

string

ID da operação Copiar da URL.

options
BlobAbortCopyFromURLOptions

Opções opcionais para a operação Anular 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 sondador de operação de execução prolongada 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 o poller. Observe que o retorno de chamada onProgress não será invocado se a operação for concluída na primeira solicitação e tentar 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 Copiar Blob 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 Copiar Blob pode ser um arquivo do Azure em qualquer conta de armazenamento do Azure. Apenas as contas de armazenamento criadas a partir de 7 de junho de 2012 permitem que a operação Copy Blob faça cópias de outra conta de armazenamento.

function beginCopyFromURL(copySource: string, options?: BlobBeginCopyFromURLOptions)

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

Retornos

Promise<PollerLike<PollOperationState<BlobBeginCopyFromURLResponse>, BlobBeginCopyFromURLResponse>>

commitBlockList(string[], BlockBlobCommitBlockListOptions)

Grava um blob especificando a lista de IDs de bloco que constituem o blob. Para ser gravado como parte de um blob, um bloco deve ter sido gravado com êxito no servidor em uma operação <xref:stageBlock> anterior. Você pode chamar <xref:commitBlockList> para atualizar um blob carregando apenas os blocos que foram alterados e depois confirmando os blocos novos e existentes em conjunto. Todos os blocos não especificados na lista de blocos e excluídos permanentemente.

function commitBlockList(blocks: string[], options?: BlockBlobCommitBlockListOptions)

Parâmetros

blocks

string[]

Matriz de valor de 64 bytes codificado em base64

options
BlockBlobCommitBlockListOptions

Opções para a operação Bloquear Lista de Blocos de Confirmação de Blobs.

Retornos

Dados de resposta para a operação Bloquear Lista de Blocos de Confirmação de Blobs.

createSnapshot(BlobCreateSnapshotOptions)

Cria um instantâneo somente leitura de um blob.

function createSnapshot(options?: BlobCreateSnapshotOptions)

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 é excluído posteriormente, durante a coleta de lixo. Observe que para excluir um blob, você deve excluir todos os seus instantâneos. Você pode excluir ambos ao mesmo tempo com a operação Excluir Blob.

function delete(options?: BlobDeleteOptions)

Parâmetros

options
BlobDeleteOptions

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

Retornos

deleteIfExists(BlobDeleteOptions)

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

function deleteIfExists(options?: BlobDeleteOptions)

Parâmetros

options
BlobDeleteOptions

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

Retornos

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Exclua a política immutablility no blob.

function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions)

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 Obter Blob para ler um instantâneo.

  • Em Node.js, os dados retornam em um fluxo legívelStreamBody legível
  • Em navegadores, os dados retornam em um blobBody de promessa
function download(offset?: number, count?: number, options?: BlobDownloadOptions)

Parâmetros

offset

number

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

count

number

Quantos dados devem ser 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 NO RUNTIME NODE.JS. Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixando todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até cerca de 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 <xref:downloadToFile>.

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

Parâmetros

buffer

Buffer

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

offset

number

A partir da qual a posição do blob de blocos será baixada (em bytes)

count

number

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

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Retornos

Promise<Buffer>

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. Baixa um Blob do Azure em paralelo a um buffer. Deslocamento e contagem são opcionais, baixando todo o blob se eles não forem fornecidos.

Aviso: os buffers só podem dar suporte a arquivos de até cerca de 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 <xref:downloadToFile>.

function downloadToBuffer(offset?: number, count?: number, options?: BlobDownloadToBufferOptions)

Parâmetros

offset

number

A partir da qual a posição do blob de blocos será baixada (em bytes)

count

number

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

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Retornos

Promise<Buffer>

downloadToFile(string, number, number, BlobDownloadOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. 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, passe 0 e indefinidos, respectivamente, para baixar todo o blob.

function downloadToFile(filePath: string, offset?: number, count?: number, options?: BlobDownloadOptions)

Parâmetros

filePath

string

offset

number

A partir da qual a posição do blob de blocos será baixada.

count

number

Quantos dados devem ser baixados. Baixará 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)

Parâmetros

options
BlobExistsOptions

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

Retornos

Promise<boolean>

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.

function generateSasUrl(options: BlobGenerateSasUrlOptions)

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.

getAppendBlobClient()

Cria um objeto AppendBlobClient.

function getAppendBlobClient()

Retornos

getBlobLeaseClient(string)

Obtenha um <xref:BlobLeaseClient> que gerencia as concessões no blob.

function getBlobLeaseClient(proposeLeaseId?: string)

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

Retornos

getBlockList(BlockListType, BlockBlobGetBlockListOptions)

Retorna a lista de blocos que foram carregados como parte de um blob de blocos usando o filtro de lista de blocos especificado.

function getBlockList(listType: BlockListType, options?: BlockBlobGetBlockListOptions)

Parâmetros

listType
BlockListType

Especifica se é necessário retornar a lista de blocos confirmados, a lista de blocos não confirmados ou as duas listas.

options
BlockBlobGetBlockListOptions

Opções para a operação Bloquear Lista de Blocos obter blob.

Retornos

Dados de resposta para a operação Bloquear Lista de Blocos de Obtenção de Blob.

getPageBlobClient()

Cria um objeto PageBlobClient.

function getPageBlobClient()

Retornos

getProperties(BlobGetPropertiesOptions)

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

function getProperties(options?: BlobGetPropertiesOptions)

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)

Parâmetros

Retornos

query(string, BlockBlobQueryOptions)

DISPONÍVEL APENAS NO RUNTIME NODE.JS. Consulta rápida para um blob formatado em JSON ou CSV.

Uso de exemplo (Node.js):

// Query and convert a blob to a string
const queryBlockBlobResponse = await blockBlobClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryBlockBlobResponse.readableStreamBody)).toString();
console.log("Query blob content:", downloaded);

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);
  });
}
function query(query: string, options?: BlockBlobQueryOptions)

Parâmetros

query

string

Retornos

setAccessTier(BlockBlobTier | PremiumPageBlobTier | 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, o IOPS e a largura de banda permitidos 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.

function setAccessTier(tier: BlockBlobTier | PremiumPageBlobTier | string, options?: BlobSetTierOptions)

Parâmetros

tier

BlockBlobTier | PremiumPageBlobTier | string

A camada a ser definida no blob. Os valores válidos são Frequente, Esporádico ou Arquivo Morto.

options
BlobSetTierOptions

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

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.

function setHTTPHeaders(blobHTTPHeaders?: BlobHTTPHeaders, options?: BlobSetHTTPHeadersOptions)

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 habilitar o navegador para fornecer funcionalidade com base no tipo de arquivo.

options
BlobSetHTTPHeadersOptions

Opções opcionais para a operação Definir Cabeçalhos HTTP de Blob.

Retornos

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Defina a política de immutablility no blob.

function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions)

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)

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 de nome-valor. Se nenhuma opção for fornecida ou nenhum metadado definido no parâmetro , os metadados do blob serão removidos.

function setMetadata(metadata?: Metadata, options?: BlobSetMetadataOptions)

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. Os caracteres de chave e valor de marca válidos incluem letras minúsculas e maiúsculas, dígitos (0-9), espaço (' '), mais ('+'), menos ('-'), ponto final ('.'), barra ('/'), dois-pontos (':'), igual a ('=') e sublinhado ('_') .

function setTags(tags: Tags, options?: BlobSetTagsOptions)

Parâmetros

tags
Tags

Retornos

stageBlock(string, HttpRequestBody, number, BlockBlobStageBlockOptions)

Carrega o bloco especificado na "área de preparo" do blob de blocos para ser confirmado posteriormente por uma chamada para commitBlockList.

function stageBlock(blockId: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobStageBlockOptions)

Parâmetros

blockId

string

Um valor de 64 bytes codificado em base64

body

HttpRequestBody

Dados a serem carregados na área de preparo.

contentLength

number

Número de bytes a serem carregados.

options
BlockBlobStageBlockOptions

Opções para a operação Bloquear Bloco de Estágio de Blob.

Retornos

Dados de resposta para a operação Bloquear Bloco de Estágio de Blob.

stageBlockFromURL(string, string, number, number, BlockBlobStageBlockFromURLOptions)

A operação Bloco de Estágio da URL cria um novo bloco a ser confirmado como parte de um blob em que o conteúdo é lido de uma URL. Essa API está disponível a partir da versão 2018-03-28.

function stageBlockFromURL(blockId: string, sourceURL: string, offset?: number, count?: number, options?: BlockBlobStageBlockFromURLOptions)

Parâmetros

blockId

string

Um valor de 64 bytes codificado em base64

sourceURL

string

Especifica a URL do blob. O valor pode ser uma URL de até 2 KB de comprimento que especifica um blob. O valor deve ser codificado em URL tal como apareceria em um pedido URI. O blob de origem deve ser público ou deve ser autenticado por meio de uma assinatura de acesso compartilhado. Se o blob de origem for público, nenhuma autenticação será necessária para executar a operação. Aqui estão alguns exemplos de URLs de objeto de origem: - https://myaccount.blob.core.windows.net/mycontainer/myblob - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=

offset

number

De qual posição do blob baixar, maior ou igual a 0

count

number

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

options
BlockBlobStageBlockFromURLOptions

Opções para a operação Bloquear Bloco de Estágio de Blob da URL.

Retornos

Dados de resposta para a operação Bloquear Bloco de Estágio de Blob da URL.

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

A operação síncrona Copiar 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.

function syncCopyFromURL(copySource: string, options?: BlobSyncCopyFromURLOptions)

Parâmetros

copySource

string

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

Retornos

syncUploadFromURL(string, BlockBlobSyncUploadFromURLOptions)

Cria um novo Blob de Blocos em que o conteúdo do blob é lido de uma determinada URL. Essa API tem suporte a partir da versão 2020-04-08. Não há suporte para atualizações parciais com Put Blob da URL; o conteúdo de um blob existente é substituído pelo conteúdo do novo blob. Para executar atualizações parciais no conteúdo de um blob de blocos usando uma URL de origem, use <xref:stageBlockFromURL> e <xref:commitBlockList>.

function syncUploadFromURL(sourceURL: string, options?: BlockBlobSyncUploadFromURLOptions)

Parâmetros

sourceURL

string

Especifica a URL do blob. O valor pode ser uma URL de até 2 KB de comprimento que especifica um blob. O valor deve ser codificado em URL tal como apareceria em um pedido URI. O blob de origem deve ser público ou deve ser autenticado por meio de uma assinatura de acesso compartilhado. Se o blob de origem for público, nenhuma autenticação será necessária para executar a operação. Aqui estão alguns exemplos de URLs de objeto de origem: - https://myaccount.blob.core.windows.net/mycontainer/myblob - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=

options
BlockBlobSyncUploadFromURLOptions

Parâmetros opcionais.

Retornos

undelete(BlobUndeleteOptions)

Restaura o conteúdo e os metadados do blob com exclusão reversível e de todos os instantâneos excluídos temporariamente associados. O blob de exclusão tem suporte apenas na versão 2017-07-29 ou posterior.

function undelete(options?: BlobUndeleteOptions)

Parâmetros

options
BlobUndeleteOptions

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

Retornos

upload(HttpRequestBody, number, BlockBlobUploadOptions)

Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente. A atualização de um blob de blocos existente substitui todos os metadados existentes no blob. Não há suporte para atualizações parciais; o conteúdo do blob existente é substituído pelo novo conteúdo. Para executar uma atualização parcial de um blob de blocos, use <xref:stageBlock> e <xref:commitBlockList>. Esse é um método de carregamento não paralelo, use <xref:uploadFile><xref:uploadStream> ou <xref:uploadBrowserData> para melhorar o desempenho com o carregamento de simultaneidade.

function upload(body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)

Parâmetros

body

HttpRequestBody

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

contentLength

number

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

options
BlockBlobUploadOptions

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

Retornos

Dados de resposta para a operação de Carregamento de Blob de Blocos.

Exemplo de uso:

const content = "Hello world!";
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);

uploadBrowserData(Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Aviso

Essa API foi preterida.

Use <xref:uploadData> instead.

DISPONÍVEL SOMENTE EM NAVEGADORES. Carrega um objeto Blob/File/ArrayBuffer/ArrayBufferView do navegador para bloquear o blob.

Quando o tamanho do buffer for menor ou igual a 256 MB, esse método usará uma chamada de upload para concluir o upload. Caso contrário, esse método chamará <xref:stageBlock> para carregar blocos e, por fim, chamará <xref:commitBlockList> para confirmar a lista de blocos.

Uma opção comum <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> a ser definida é blobContentType, permitindo que o navegador forneça funcionalidade com base no tipo de arquivo.

function uploadBrowserData(browserData: Blob | ArrayBuffer | ArrayBufferView, options?: BlockBlobParallelUploadOptions)

Parâmetros

browserData

Blob | ArrayBuffer | ArrayBufferView

Blob, File, ArrayBuffer ou ArrayBufferView

options
BlockBlobParallelUploadOptions

Opções para carregar dados do navegador.

Retornos

Dados de resposta para a operação de Upload de Blob.

uploadData(Buffer | Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Carrega um objeto Buffer(Node.js)/Blob(browsers)/ArrayBuffer/ArrayBufferView em um BlockBlob. Quando o comprimento dos dados não for maior do que o especificado <xref:BlockBlobParallelUploadOptions.maxSingleShotSize> (o padrão é <xref:BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES>), esse método usará uma <xref:upload> chamada para concluir o upload. Caso contrário, esse método chamará <xref:stageBlock> para carregar blocos e, por fim, chamará <xref:commitBlockList> para confirmar a lista de blocos.

Uma opção comum <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> a ser definida é blobContentType, permitindo que o navegador forneça funcionalidade com base no tipo de arquivo.

function uploadData(data: Buffer | Blob | ArrayBuffer | ArrayBufferView, options?: BlockBlobParallelUploadOptions)

Parâmetros

data

Buffer | Blob | ArrayBuffer | ArrayBufferView

Buffer(Node.js), Blob, ArrayBuffer ou ArrayBufferView

Retornos

uploadFile(string, BlockBlobParallelUploadOptions)

DISPONÍVEL SOMENTE EM NODE.JS RUNTIME. Carrega um arquivo local em blocos para um blob de blocos.

Quando o tamanho do arquivo for menor ou igual a 256 MB, esse método usará uma chamada de upload para concluir o upload. Caso contrário, esse método chamará stageBlock para carregar blocos e, por fim, chamará commitBlockList para confirmar a lista de blocos.

function uploadFile(filePath: string, options?: BlockBlobParallelUploadOptions)

Parâmetros

filePath

string

Caminho completo do arquivo local

options
BlockBlobParallelUploadOptions

Opções para carregar na operação de blob de blocos.

Retornos

Dados de resposta para a operação de Upload de Blob.

uploadStream(Readable, number, number, BlockBlobUploadStreamOptions)

DISPONÍVEL SOMENTE EM NODE.JS RUNTIME. Carrega um fluxo de Node.js legível no blob de blocos.

DICAS DE MELHORIA DE DESEMPENHO:

  • O fluxo de entrada highWaterMark é melhor para definir um mesmo valor com o parâmetro bufferSize, o que evitará operações Buffer.concat().
function uploadStream(stream: Readable, bufferSize?: number, maxConcurrency?: number, options?: BlockBlobUploadStreamOptions)

Parâmetros

stream

Readable

Node.js fluxo legível

bufferSize

number

Tamanho de cada buffer alocado, também o tamanho do bloco no blob de blocos carregado. O valor padrão é 8 MB

maxConcurrency

number

A simultaneidade máxima indica o número máximo de buffers que podem ser alocados, correlação positiva com simultaneidade máxima de upload. O valor padrão é 5

options
BlockBlobUploadStreamOptions

Opções para carregar o fluxo na operação de blob de blocos.

Retornos

Dados de resposta para a operação de Upload de Blob.

withSnapshot(string)

Cria um novo objeto BlockBlobClient idêntico à origem, mas com o carimbo de data/hora do instantâneo especificado. Fornecer "" removerá o instantâneo e retornará uma URL para o blob de base.

function withSnapshot(snapshot: string)

Parâmetros

snapshot

string

O carimbo de data/hora do instantâneo.

Retornos

Um novo objeto BlockBlobClient idêntico à origem, mas com o carimbo de data/hora do 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 de base.

function withVersion(versionId: string)

Parâmetros

versionId

string

A versionId.

Retornos

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