Sdílet prostřednictvím


Odstranění a obnovení objektu blob pomocí TypeScriptu

Tento článek ukazuje, jak odstranit objekty blob pomocí klientské knihovny azure Storage pro JavaScript. Pokud jste povolili obnovitelné odstranění objektů blob, můžete odstraněné objekty blob obnovit během doby uchovávání.

Požadavky

  • Příklady v tomto článku předpokládají, že už máte projekt nastavený tak, aby fungoval s klientskou knihovnou Azure Blob Storage pro JavaScript. Další informace o nastavení projektu, včetně instalace balíčku, importu modulů a vytvoření autorizovaného klientského objektu pro práci s datovými prostředky, najdete v tématu Začínáme se službou Azure Blob Storage a TypeScriptem.
  • Autorizační mechanismus musí mít oprávnění k odstranění objektu blob nebo obnovení obnovitelně odstraněného objektu blob. Další informace najdete v pokynech k autorizaci pro následující operace rozhraní REST API:

Odstranění objektu blob

Pokud chcete odstranit objekt blob, vytvořte Objekt blobClient a pak volejte některou z těchto metod:

Následující příklad odstraní objekt blob.

async function deleteBlob(
  containerClient: ContainerClient,
  blobName
): Promise<void> {
  // Create blob client from container client
  const blockBlobClient: BlockBlobClient =
    await containerClient.getBlockBlobClient(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: BlobDeleteOptions = {
    deleteSnapshots: 'include' // or 'only'
  };
  const blobDeleteResponse: BlobDeleteResponse = await blockBlobClient.delete(
    options
  );

  if (!blobDeleteResponse.errorCode) {
    console.log(`deleted blob ${blobName}`);
  }
}

Následující příklad odstraní objekt blob, pokud existuje.

async function deleteBlobIfItExists(
  containerClient: ContainerClient,
  blobName
): Promise<void> {
  // Create blob client from container client
  const blockBlobClient = await containerClient.getBlockBlobClient(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: BlobDeleteOptions = {
    deleteSnapshots: 'include' // or 'only'
  };
  const blobDeleteIfExistsResponse: BlobDeleteIfExistsResponse =
    await blockBlobClient.deleteIfExists(options);

  if (!blobDeleteIfExistsResponse.errorCode) {
    console.log(`deleted blob ${blobName}`);
  }
}

Obnovení odstraněného objektu blob

Obnovitelné odstranění objektu blob chrání jednotlivý blob a jeho verze, snímky a metadata před náhodným odstraněním nebo přepsáním tak, že odstraněná data se po určitou dobu uchovají v systému. Během doby uchovávání můžete blob obnovit do stavu v době jeho odstranění. Po uplynutí doby uchovávání se objekt blob odstraní trvale. Další informace o obnovitelném odstranění objektů blob najdete v tématu Obnovitelné odstranění objektů blob.

Klientské knihovny Azure Storage můžete použít k obnovení obnovitelně odstraněného objektu blob nebo snímku.

Obnovení obnovitelně odstraněných objektů při zakázání správy verzí

Pokud chcete obnovit odstraněné objekty blob, vytvořte Objekt blobClient a pak volejte následující metodu:

Tato metoda obnoví obnovitelně odstraněné objekty blob a všechny odstraněné snímky, které jsou k němu přidružené. Volání této metody pro objekt blob, který nebyl odstraněn, nemá žádný vliv.

async function undeleteBlob(
  containerClient: ContainerClient,
  blobName
): Promise<void> {
  // Create blob client from container client
  const blockBlobClient: BlockBlobClient =
    await containerClient.getBlockBlobClient(blobName);

  const options: BlobUndeleteOptions = {};
  const blobUndeleteResponse: BlobUndeleteResponse =
    await blockBlobClient.undelete(options);

  if (!blobUndeleteResponse.errorCode) {
    console.log(`undeleted blob ${blobName}`);
  }
}

Zdroje informací

Další informace o tom, jak odstranit objekty blob a obnovit odstraněné objekty blob pomocí klientské knihovny služby Azure Blob Storage pro JavaScript, najdete v následujících zdrojích informací.

Operace rozhraní REST API

Sada Azure SDK pro JavaScript obsahuje knihovny, které jsou postavené na rozhraní Azure REST API a umožňují interakci s operacemi rozhraní REST API prostřednictvím známých paradigmat JavaScriptu. Metody klientské knihovny pro odstranění objektů blob a obnovení odstraněných objektů blob používají následující operace rozhraní REST API:

Ukázky kódu

Prostředky klientské knihovny

Viz také