Вывод списка контейнеров BLOB-объектов с помощью JavaScript или TypeScript
При перечислении контейнеров в учетной записи служба хранилища Azure из кода можно указать несколько вариантов управления возвратом результатов из служба хранилища Azure. В этой статье объясняется, как получить список контейнеров BLOB-объектов с помощью клиентской библиотеки службы хранилища Azure для JavaScript.
Необходимые компоненты
- В примерах этой статьи предполагается, что у вас уже есть проект, настроенный для работы с клиентской библиотекой Хранилище BLOB-объектов Azure для JavaScript. Сведения о настройке проекта, включая установку пакетов, импорт модулей и создание авторизованного клиентского объекта для работы с ресурсами данных, см. в статье "Начало работы с Хранилище BLOB-объектов Azure и JavaScript".
- Механизм авторизации должен иметь разрешения для перечисления контейнеров BLOB-объектов. Дополнительные сведения см. в руководстве по авторизации для следующей операции REST API:
Сведения о параметрах перечисления контейнеров
При перечислении контейнеров из кода можно указать параметры для управления возвратом результатов из служба хранилища Azure. Можно указать число возвращаемых результатов в каждом наборе результатов, а затем извлечь последующие наборы. Вы также можете фильтровать результаты по префиксу и возвращать метаданные контейнера с результатами. Описание этих параметров приводится в следующих разделах.
Чтобы получить список контейнеров в своей учетной записи хранения, вызовите следующий метод:
Этот метод возвращает список объектов ContainerItem . Контейнеры упорядочены лексографически по имени.
Управление количеством возвращаемых результатов
По умолчанию операция получения списка возвращает не более 5000 результатов за раз, но вы можете определить количество возвращаемых результатов для каждой операции получения списка. Представленные в этой статье примеры демонстрируют постраничное получение результатов.
Фильтрация результатов с помощью префикса
Чтобы отфильтровать список контейнеров, укажите строку для prefix
параметра в ServiceListContainersOptions. Строка префикса может содержать один или несколько символов. Служба хранилища Azure возвращает только те контейнеры, имена которых начинаются с этого префикса.
Включение метаданных контейнера
Чтобы включить метаданные контейнера с результатами, задайте includeMetadata
параметр true
в ServiceListContainersOptions. служба хранилища Azure включает метаданные с каждым возвращенным контейнером, поэтому вам не нужно отдельно получить метаданные контейнера.
Включение удаленных контейнеров
Чтобы включить обратимо удаленные контейнеры с результатами, задайте includeDeleted
параметр в ServiceListContainersOptions.
Пример кода: список контейнеров
В следующем примере асинхронно перечисляются контейнеры в учетной записи хранения, имена которых начинаются с указанного префикса. В примере выводится список контейнеров, начинающихся с указанного префикса, и возвращается указанное количество результатов для каждого вызова операции получения списка. Затем для получения следующего сегмента результатов используется маркер продолжения. В примере вместе с результатами также возвращаются метаданные контейнера.
async function listContainers(blobServiceClient, containerNamePrefix) {
const options = {
includeDeleted: false,
includeMetadata: true,
includeSystem: true,
prefix: containerNamePrefix
}
console.log("Containers (by page):");
for await (const response of blobServiceClient.listContainers(options).byPage({
maxPageSize: 20,
})) {
console.log("- Page:");
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(` - ${container.name}`);
}
}
}
}
Ресурсы
Дополнительные сведения о перечислении контейнеров с помощью клиентской библиотеки Хранилище BLOB-объектов Azure для JavaScript см. в следующих ресурсах.
Операции REST API
Пакет SDK Azure для JavaScript содержит библиотеки, которые создаются на основе REST API Azure, что позволяет взаимодействовать с операциями REST API через знакомые парадигмы JavaScript. Методы клиентской библиотеки для перечисления контейнеров используют следующую операцию REST API:
- Список контейнеров (REST API)
Примеры кода
- Просмотр примеров кода JavaScript и TypeScript из этой статьи (GitHub)