Een blobcontainer verwijderen en herstellen met JavaScript of TypeScript
In dit artikel wordt beschreven hoe u containers verwijdert met de Azure Storage-clientbibliotheek voor JavaScript. Als u voorlopig verwijderen van containers hebt ingeschakeld, kunt u verwijderde containers herstellen.
Vereisten
- In de voorbeelden in dit artikel wordt ervan uitgegaan dat u al een project hebt ingesteld voor gebruik met de Azure Blob Storage-clientbibliotheek voor JavaScript. Zie Aan de slag met Azure Blob Storage en JavaScript voor meer informatie over het instellen van uw project, inclusief pakketinstallatie, het importeren van modules en het maken van een geautoriseerd clientobject voor gebruik met gegevensbronnen.
- Het autorisatiemechanisme moet machtigingen hebben om een blobcontainer te verwijderen of om een voorlopig verwijderde container te herstellen. Zie de autorisatierichtlijnen voor de volgende REST API-bewerkingen voor meer informatie:
Een container verwijderen
Als u een container wilt verwijderen, gebruikt u de volgende methode uit de klasse BlobServiceClient :
U kunt ook een container verwijderen met behulp van de volgende methode uit de klasse ContainerClient :
Nadat u een container hebt verwijderd, kunt u gedurende ten minste 30 seconden geen container met dezelfde naam maken. Het maken van een container met dezelfde naam mislukt met HTTP-foutcode 409 (Conflict)
. Alle andere bewerkingen in de container of de blobs die deze bevat, mislukken met HTTP-foutcode 404 (Not Found)
.
In het volgende voorbeeld wordt een BlobServiceClient
object gebruikt om de opgegeven container te verwijderen:
async function deleteContainer(blobServiceClient, containerName) {
return await blobServiceClient.deleteContainer(containerName);
}
In het volgende voorbeeld ziet u hoe u alle containers verwijdert die beginnen met een opgegeven voorvoegsel:
async function deleteContainersWithPrefix(blobServiceClient, prefix) {
const containerOptions = {
includeDeleted: false,
includeMetadata: false,
includeSystem: true,
prefix
}
for await (const containerItem of blobServiceClient.listContainers(containerOptions)) {
try{
const containerClient = blobServiceClient.getContainerClient(containerItem.name);
await containerClient.delete();
console.log(`Deleted ${containerItem.name} container - success`);
}catch(ex){
console.log(`Deleted ${containerItem.name} container - failed - ${ex.message}`);
}
}
}
Een verwijderde container herstellen
Wanneer voorlopig verwijderen van containers is ingeschakeld voor een opslagaccount, kunnen een container en de inhoud ervan worden hersteld nadat deze is verwijderd, binnen een retentieperiode die u opgeeft. U kunt een voorlopig verwijderde container herstellen met behulp van een BlobServiceClient-object :
In het volgende voorbeeld wordt een verwijderde container gevonden, de versie-id van die verwijderde container ophaalt en die id vervolgens doorgegeven aan de undeleteContainer
methode om de container te herstellen.
async function undeleteContainer(blobServiceClient, containerName) {
// Version to restore
let containerVersion;
const containerOptions = {
includeDeleted: true,
prefix: containerName
}
// Find the deleted container and restore it
for await (const containerItem of blobServiceClient.listContainers(containerOptions)) {
if (containerItem.name === containerName) {
containerVersion = containerItem.version;
}
}
const containerClient = await blobServiceClient.undeleteContainer(
containerName,
containerVersion,
);
}
Resources
Zie de volgende resources voor meer informatie over het verwijderen van een container met behulp van de Azure Blob Storage-clientbibliotheek voor JavaScript.
Codevoorbeelden
- Voorbeelden van JavaScript- en TypeScript-code weergeven uit dit artikel (GitHub)
REST API-bewerkingen
De Azure SDK voor JavaScript bevat bibliotheken die zijn gebaseerd op de Azure REST API, zodat u kunt communiceren met REST API-bewerkingen via bekende JavaScript-paradigma's. De clientbibliotheekmethoden voor het verwijderen of herstellen van een container maken gebruik van de volgende REST API-bewerkingen:
Clientbibliotheekbronnen
Zie ook
Gerelateerde inhoud
- Dit artikel maakt deel uit van de ontwikkelaarshandleiding voor Blob Storage voor JavaScript/TypeScript. Zie de volledige lijst met artikelen over ontwikkelaarshandleidingen in Uw JavaScript-/TypeScript-app bouwen voor meer informatie.