Blobtároló törlése és visszaállítása JavaScript használatával
Ez a cikk bemutatja, hogyan törölhet tárolókat az Azure Storage JavaScript-ügyfélkódtárával. Ha engedélyezte a tárolók helyreállítható törlését, visszaállíthatja a törölt tárolókat.
Előfeltételek
- A cikkben szereplő példák feltételezik, hogy már rendelkezik egy projekttel, amely a JavaScripthez készült Azure Blob Storage ügyfélkódtárral dolgozik. Ha szeretne többet megtudni a projekt beállításáról, beleértve a csomagtelepítést, a modulok importálását és egy engedélyezett ügyfélobjektum létrehozását az adaterőforrások használatához, olvassa el az Azure Blob Storage és a JavaScript használatának első lépéseit.
- Az engedélyezési mechanizmusnak rendelkeznie kell a blobtároló törléséhez vagy egy helyreállíthatóan törölt tároló visszaállításához szükséges engedélyekkel. További információkért tekintse meg az alábbi REST API-műveletek engedélyezési útmutatóját:
Tároló törlése
Tároló JavaScriptben való törléséhez hozzon létre egy BlobServiceClientet vagy ContainerClientet , majd használja az alábbi módszerek egyikét:
- BlobServiceClient.deleteContainer
- ContainerClient.Töröl
- ContainerClient.deleteIfExists
A tároló törlése után legalább 30 másodpercig nem hozhat létre azonos nevű tárolót. Ha egy azonos nevű tárolót próbál létrehozni, a 409-ben megadott HTTP-hibakód (ütközés) meghiúsul. A tárolón vagy a blobokon található egyéb műveletek a 404-ben (nem található) hibakóddal meghiúsulnak.
Tároló törlése a BlobServiceClient használatával
Az alábbi példa törli a megadott tárolót. Tároló törlése a BlobServiceClient használatával:
// delete container immediately on blobServiceClient
async function deleteContainerImmediately(blobServiceClient, containerName) {
const response = await blobServiceClient.deleteContainer(containerName);
if (!response.errorCode) {
console.log(`deleted ${containerItem.name} container`);
}
}
Tároló törlése a ContainerClient használatával
Az alábbi példa bemutatja, hogyan törölheti az összes olyan tárolót, amelynek a neve egy megadott előtaggal kezdődik egy ContainerClient használatával.
async function deleteContainersWithPrefix(blobServiceClient, blobNamePrefix){
const containerOptions = {
includeDeleted: false,
includeMetadata: false,
includeSystem: true,
prefix: blobNamePrefix
}
for await (const containerItem of blobServiceClient.listContainers(containerOptions)) {
const containerClient = blobServiceClient.getContainerClient(containerItem.name);
const response = await containerClient.delete();
if(!response.errorCode){
console.log(`deleted ${containerItem.name} container`);
}
}
}
Törölt tároló visszaállítása
Ha a tároló helyreállítható törlése engedélyezve van egy tárfiókhoz, előfordulhat, hogy a tároló és tartalma a törlés után, a megadott megőrzési időn belül helyreáll. Helyreállíthatóan törölt tárolót blobServiceClient-objektum használatával állíthat vissza:
- BlobServiceClient.undeleteContainer
Az alábbi példa megkeres egy törölt tárolót, lekéri a törölt tároló verzióazonosítóját, majd átadja az azonosítót az undeleteContainer metódusnak a tároló visszaállításához.
// Undelete specific container - last version
async function undeleteContainer(blobServiceClient, containerName) {
// version to undelete
let containerVersion;
const containerOptions = {
includeDeleted: true,
prefix: containerName
}
// container listing returns version (timestamp) in the ContainerItem
for await (const containerItem of blobServiceClient.listContainers(containerOptions)) {
// if there are multiple deleted versions of the same container,
// the versions are in asc time order
// the last version is the most recent
if (containerItem.name === containerName) {
containerVersion = containerItem.version;
}
}
const containerClient = await blobServiceClient.undeleteContainer(
containerName,
containerVersion,
// optional/new container name - if unused, original container name is used
//newContainerName
);
// undelete was successful
console.log(`${containerName} is undeleted`);
// do something with containerClient
// ...
}
Források
Ha többet szeretne megtudni egy tároló törléséről a JavaScripthez készült Azure Blob Storage ügyfélkódtár használatával, tekintse meg az alábbi erőforrásokat.
REST API-műveletek
Az Azure SDK for JavaScript olyan kódtárakat tartalmaz, amelyek az Azure REST API-ra épülnek, lehetővé téve a REST API-műveletek használatát ismert JavaScript-paradigmákon keresztül. A tároló törlésére vagy visszaállítására szolgáló ügyfélkódtár-metódusok a következő REST API-műveleteket használják:
Kódminták
Ügyfélkódtár erőforrásai
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: