Удаление и восстановление большого двоичного объекта с помощью JavaScript
В этой статье показано, как удалить большие двоичные объекты с помощью клиентской библиотеки служба хранилища Azure для JavaScript и как восстановить обратимо удаленные большие двоичные объекты в течение периода хранения.
Необходимые компоненты
- В примерах этой статьи предполагается, что у вас уже есть проект, настроенный для работы с клиентской библиотекой Хранилище BLOB-объектов Azure для JavaScript. Сведения о настройке проекта, включая установку пакетов, импорт модулей и создание авторизованного клиентского объекта для работы с ресурсами данных, см. в статье "Начало работы с Хранилище BLOB-объектов Azure и JavaScript".
- Механизм авторизации должен иметь разрешения на удаление большого двоичного объекта или восстановление обратимого удаленного большого двоичного объекта. Дополнительные сведения см. в руководстве по авторизации для следующих операций REST API:
Удаление большого двоичного объекта
Примечание.
Если обратимое удаление BLOB-объектов включено для учетной записи хранения, невозможно выполнить постоянное удаление с помощью методов клиентской библиотеки. Используя методы, приведенные в этой статье, обратимо удаленный большой двоичный объект, версия большого двоичного объекта или моментальный снимок остается доступным до истечения срока хранения, в то время как оно будет окончательно удалено. Дополнительные сведения о базовой операции REST API см. в статье "Удаление BLOB-объектов (REST API)".
Чтобы удалить большой двоичный объект, создайте 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-объектов.
Клиентские библиотеки службы хранилища 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}`);
}
Ресурсы
Дополнительные сведения об удалении больших двоичных объектов и восстановлении удаленных BLOB-объектов с помощью клиентской библиотеки Хранилище BLOB-объектов Azure для JavaScript см. в следующих ресурсах.
Операции REST API
Пакет SDK Azure для JavaScript содержит библиотеки, которые создаются на основе REST API Azure, что позволяет взаимодействовать с операциями REST API через знакомые парадигмы JavaScript. Методы клиентской библиотеки для удаления больших двоичных объектов и восстановления удаленных BLOB-объектов используют следующие операции REST API:
- Удаление больших двоичных объектов (REST API)
- Восстановление больших двоичных объектов (REST API)