共用方式為


透過 JavaScript 刪除及還原 Blob

本文說明如何使用適用於 JavaScript 的 Azure 儲存體用戶端程式庫來刪除 blob。 如果您已啟用 Blob 的虛刪除,則可以在保留期間還原已刪除的 Blob。

必要條件

  • 本文中的範例假設您已設定專案,以搭配使用適用於 JavaScript 的 Azure Blob 儲存體用戶端程式庫。 若要了解設定專案,包括套件安裝、匯入模組,以及建立授權的用戶端物件來處理資料資源,請參閱開始使用 Azure Blob 儲存體和 JavaScript
  • 授權機制必須具有刪除 Blob 或還原虛刪除 Blob 的權限。 若要深入了解,請參閱下列 REST API 作業的授權指引:

刪除 Blob

若要刪除 Blob,請建立 BlobClient,然後呼叫下列其中一種方法:

下列範例會刪除 blob。

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' // or 'only'
  }

  // Create blob client from container client
  const blockBlobClient = await containerClient.getBlockBlobClient(blobName);

  await blockBlobClient.delete(options);

  console.log(`deleted blob ${blobName}`);

}

下列範例會刪除 blob (若存在)。

async function deleteBlobIfItExists(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' // or 'only'
  }

  // Create blob client from container client
  const blockBlobClient = await containerClient.getBlockBlobClient(blobName);

  await blockBlobClient.deleteIfExists(options);

  console.log(`deleted blob ${blobName}`);

}

還原已刪除的 Blob

Blob 虛刪除可保護個別的 Blob 及其版本、快照集和中繼資料,將刪除的資料保留在系統中一段指定時間,避免不小心刪除或覆寫資料。 在保留期間內,您可以在刪除時將 Blob 還原至其狀態。 保留期限到期後,即會永久刪除該 Blob。 如需關於 Blob 虛刪除的詳細資訊,請參閱 Blob 的虛刪除

您可以使用 Azure 儲存體用戶端程式庫來還原已虛刪除的 Blob 或快照集。

在停用版本控制時還原虛刪除的物件

若要還原已刪除的 Blob,請建立 BlobClient,然後呼叫下列方法:

這個方法會還原虛刪除的 Blob,以及與其相關聯的任何已刪除快照集。 針對未刪除的 Blob 呼叫這個方法沒有任何作用。

async function undeleteBlob(containerClient, blobName){

  // Create blob client from container client
  const blockBlobClient = await containerClient.getBlockBlobClient(blobName);

  await blockBlobClient.undelete();

  console.log(`undeleted blob ${blobName}`);

}

資源

若要深入了解如何使用適用於 JavaScript 的 Azure Blob 儲存體用戶端程式庫來刪除 Blob 和還原已刪除的 Blob,請參閱下列資源。

REST API 操作

適用於 JavaScript 的 Azure SDK 包含建置在 Azure REST API 之上的程式庫,可讓您透過熟悉的 JavaScript 範例與 REST API 作業進行互動。 用來刪除 Blob 和還原已刪除 Blob 的用戶端程式庫方法會使用下列 REST API 作業:

程式碼範例

用戶端程式庫資源

另請參閱