Хранилище BLOB-объектов Azure и javascript, как вывести список всех снимков для определенного BLOB-объекта c - PullRequest
1 голос
/ 16 января 2020

Начиная проект nodejs, мне нужно получить последний снимок (и его метаданные) для указанного c большого двоичного объекта. Я использую Azure клиентскую библиотеку хранилища BLOB-объектов v12 для JavaScript.

Я не уверен, но я нашел только метод, связанный с ContainerClient, позволяющий перечислять все BLOB-объекты и снимки в контейнере , По моему, это не для меня очень эффективно с точки зрения производительности.

Есть ли способ напрямую получить последний снимок известного большого двоичного объекта или, по крайней мере, получить все снимки?

//construct of the blob storage connection
const blobServiceClient = new BlobServiceClient(
    `https://${account}.blob.core.windows.net/`,
    sharedKeyCredential
);
//target application container
let containerClient = blobServiceClient.getContainerClient(app);
blobClient = containerClient.getBlobClient(filename); //ok
//blobSnapshots = containerClient.getSnapshots(filename); // nok

Метод в последней строке с комментариями наверняка не существует, но есть эквивалентный метод?

1 Ответ

3 голосов
/ 16 января 2020

Есть ли способ напрямую получить последний снимок известного большого двоичного объекта

К сожалению, нет. Вам нужно будет перечислить все снимки большого двоичного объекта и отсортировать их в обратном порядке в хронологическом порядке на основе даты / времени снимка и выбрать первый BLOB-объект. Это будет последний снимок.

или хотя бы получить все снимки?

Вам нужно вызвать метод listBlobsFlat с следующий options:

  • prefix: Это должно быть именем большого двоичного объекта.
  • includeSnapshots: значение этого параметра должно быть истинным.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...