Excluir ou restaurar um blob com o JavaScript ou o TypeScript
Este artigo mostra como excluir blobs com a Biblioteca de clientes do Armazenamento do Azure para JavaScript e como restaurar os blobs excluídos temporariamente durante o período de retenção.
Pré-requisitos
- Os exemplos neste artigo pressupõem que você já tenha um projeto configurado para trabalhar com a biblioteca de clientes do Armazenamento de Blobs do Azure para JavaScript. Para saber mais sobre a configuração do seu projeto, incluindo a instalação de pacotes, a importação de módulos e a criação de um objeto cliente autorizado para trabalhar com recursos de dados, confira Introdução ao Armazenamento de Blobs do Azure e o JavaScript.
- O mecanismo de autorização deve ter permissões para excluir um contêiner de blob ou restaurar um contêiner excluído temporariamente. Para saber mais, confira as diretrizes de autorização para as seguintes operações de API REST:
Excluir um blob
Observação
Quando a exclusão temporária de blobs estiver habilitada em uma conta de armazenamento, não será possível executar uma exclusão permanente usando os métodos da biblioteca do cliente. Usando os métodos deste artigo, um blob, uma versão de blob ou um instantâneo com exclusão temporária permanece disponível até que o período de retenção expire, momento este em que é excluído permanentemente. Para saber mais sobre a operação subjacente da API REST, confira Excluir Blob (API REST).
Para excluir um blob, chame um dos seguintes métodos:
Se o blob tiver instantâneos associados, você deverá excluir todos os seus instantâneos para excluir o blob. O seguinte exemplo de código mostra como excluir um blob e os respectivos instantâneos:
async function deleteBlob(containerClient, blobName){
// include: Delete the base blob and all of its snapshots
// only: Delete only the blob's snapshots and not the blob itself
const options = {
deleteSnapshots: 'include'
}
// Create blob client from container client
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
await blockBlobClient.delete(options);
}
Restaurar um blob excluído
A exclusão reversível de blobs protege um blob individual e suas versões, instantâneos e metadados de exclusões ou substituições acidentais, mantendo os dados excluídos no sistema por um período de tempo especificado. Durante o período de retenção, você pode restaurar o blob para seu estado na exclusão. Depois que o período de retenção expirar, o blob será excluído permanentemente. Para obter mais informações sobre a exclusão reversível de blobs, consulte Exclusão reversível de blobs.
Você pode usar as bibliotecas clientes de armazenamento do Azure para restaurar um blob ou instantâneo excluído de maneira reversível.
Restaurar objetos excluídos de maneira reversível quando o controle de versão estiver desabilitado
Para restaurar os blobs excluídos de modo reversível, chame o seguinte método:
Esse método restaura os blobs com exclusão temporária e os instantâneos excluídos associados a ele. Chamar este método em um blob que não foi excluído não tem efeito.
async function undeleteBlob(containerClient, blobName){
// Create blob client from container client
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
await blockBlobClient.undelete();
}
Recursos
Para saber mais sobre como excluir blobs e restaurar blobs excluídos usando a biblioteca de clientes do Armazenamento de Blobs do Azure para JavaScript, confira os recursos a seguir.
Exemplos de código
- Confira os códigos de exemplo JavaScript e TypeScript deste artigo (GitHub)
Operações da API REST
O SDK do Azure para JavaScript contém bibliotecas que se baseiam na API REST do Azure, permitindo a interação com as operações de API REST por meio de paradigmas conhecidos do JavaScript. Os métodos da biblioteca de clientes para exclusão de blobs e restauração de blobs excluídos usam as seguintes operações da API REST:
- Excluir um blob (API REST)
- Reverter a exclusão de um blob (API REST)
Recursos da biblioteca de clientes
- Documentação de referência da biblioteca de clientes
- Código-fonte da biblioteca de clientes
- Pacote (npm)
Confira também
Conteúdo relacionado
- Este artigo faz parte do guia para desenvolvedores do Armazenamento de Blobs para JavaScript/TypeScript. Para saber mais, confira a lista completa de artigos do guia do desenvolvedor em Criar seu aplicativo JavaScript/TypeScript.