Поделиться через


Начните работу с хранилищем Blob Azure и JavaScript или TypeScript

В этой статье показано, как подключиться к хранилищу BLOB-объектов Azure с помощью клиентской библиотеки хранилища BLOB-объектов Azure для JavaScript. После подключения используйте руководства разработчика, чтобы узнать, как ваш код может работать с контейнерами, BLOB-объектами и функциями в службе Blob Storage.

Если вы хотите начать с полного примера, ознакомьтесь с кратким руководством по клиентской библиотеке для JavaScript или TypeScript.

Справочник по | APIПакет (npm) | Исходный код | библиотекиОбразцы | Предоставление отзывов

Prerequisites

Настройка проекта

В этом разделе описывается подготовка проекта для работы с клиентской библиотекой хранилища BLOB-объектов Azure для JavaScript.

Откройте командную строку и перейдите в папку проекта. Измените имя папки <project-directory>:

cd <project-directory>

Если у вас еще нет package.json файла в каталоге, инициализируйте проект, чтобы создать файл:

npm init -y

В каталоге проекта установите пакеты для клиентских библиотек Azure Blob Storage и Azure Identity с помощью команд npm install или yarn add. Пакет @azure/identity необходим для подключений без пароля к службам Azure.

npm install @azure/storage-blob @azure/identity

Авторизуйте доступ и подключитесь к хранилищу BLOB-данных

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

Дополнительные сведения о создании и управлении клиентскими объектами, включая рекомендации, см. в статье "Создание клиентских объектов и управление ими", взаимодействующих с ресурсами данных.

Вы можете авторизовать объект BlobServiceClient с помощью маркера авторизации Microsoft Entra, ключа доступа к учетной записи или подписанной строки доступа (SAS). Для оптимальной безопасности корпорация Майкрософт рекомендует использовать Microsoft Entra ID с управляемыми удостоверениями для авторизации запросов к BLOB-данным. Для получения дополнительной информации см. Авторизация доступа к BLOB-объектам с использованием Microsoft Entra ID.

Чтобы авторизовать идентификатор Microsoft Entra, необходимо использовать субъект безопасности. Какой тип субъекта безопасности требуется, зависит от того, где выполняется ваше приложение. Руководствуйтесь следующей таблицей.

Где выполняется приложение Принцип безопасности Guidance
Локальный компьютер (разработка и тестирование) Принципал службы Сведения о регистрации приложения, настройке группы Microsoft Entra, назначении ролей и настройке переменных среды см. в статье "Авторизация доступа с помощью субъектов-служб разработчиков"
Локальный компьютер (разработка и тестирование) Удостоверение пользователя Сведения о настройке группы Microsoft Entra, назначении ролей и входе в Azure см. в статье "Авторизация доступа с помощью учетных данных разработчика"
Размещено в Azure Манажируемая идентичность Чтобы узнать, как включить управляемую идентификацию и назначать роли, см. Authorize access from Azure-hosted apps using a managed identity
Размещенные вне Azure (например, локальные приложения) Принципал службы Сведения о регистрации приложения, назначении ролей и настройке переменных среды см. в статье "Авторизация доступа из локальных приложений с помощью субъекта-службы приложений"

Авторизация доступа с помощью DefaultAzureCredential

Простой и безопасный способ авторизации доступа и подключения к Хранилищу Blob — получить токен OAuth, создав экземпляр DefaultAzureCredential. Затем вы можете использовать этот учетный данные, чтобы создать объект BlobServiceClient.

В следующем примере создается BlobServiceClient объект с помощью DefaultAzureCredential:

const accountName = "<account-name>";
const accountURL = `https://${accountName}.blob.core.windows.net`;
const blobServiceClient = new BlobServiceClient(
  accountURL,
  new DefaultAzureCredential()
);

Этот пример кода можно использовать для проектов JavaScript или TypeScript.

Создайте своё приложение

При создании приложений для работы с ресурсами данных в Хранилище BLOB-объектов Azure код в основном взаимодействует с тремя типами ресурсов: учетными записями хранения, контейнерами и большими двоичными объектами. Дополнительные сведения об этих типах ресурсов, о том, как они связаны друг с другом и как приложения взаимодействуют с ресурсами, см. в статье "Общие сведения о взаимодействии приложений с ресурсами хранилища BLOB-объектов".

В следующих руководствах показано, как получить доступ к данным и выполнить определенные действия с помощью клиентской библиотеки службы хранилища Azure для JavaScript:

Guide Description
Настройка политики повторных попыток Реализуйте политики повторных попыток для клиентских операций.
Копирование блобов Скопируйте BLOB из одного места в другое.
Создание контейнера Создание контейнеров BLOB-объектов.
Создание SAS для делегирования прав пользователя Создайте SAS пользовательской делегации для контейнера или BLOB-объекта.
Создание аренды BLOB-объектов и управление ими Установите блокировку на объект блоб и управляйте ею.
Создание аренды контейнеров и управление ими Создайте блокировку контейнера и управляйте ею.
Удаление и восстановление Удалите большие двоичные объекты и восстановите обратимо удаленные большие двоичные объекты.
Удаление и восстановление контейнеров Удалите контейнеры и восстановите обратимо удаленные контейнеры.
Загрузить BLOB Загрузка BLOB-объектов с использованием строк, потоков и путей к файлам.
Поиск BLOB-объектов с помощью тегов Задайте и извлеките теги и используйте теги для поиска больших двоичных объектов.
Список BLOB-объектов Перечисление BLOB-объектов различными способами.
Перечисление контейнеров Перечислить контейнеры в учетной записи и различные параметры, доступные для настройки списка.
Управление свойствами и метаданными (BLOB-объектами) Получение и задание свойств и метаданных для BLOB-объектов.
Управление свойствами и метаданными (контейнерами) Получение и задание свойств и метаданных для контейнеров.
Настройка производительности для передачи данных Оптимизируйте производительность операций передачи данных.
Установка или изменение уровня доступа блоба Задайте или измените уровень доступа для блочного большого двоичного объекта.
Загрузка блобов Узнайте, как отправлять BLOB-объекты с помощью строк, потоков, путей к файлам и других методов.