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


BlobClient class

BlobClient представляет URL-адрес большого двоичного объекта службы хранилища Azure; Большой двоичный объект может быть блочного BLOB-объекта, добавления большого двоичного объекта или страничного BLOB-объекта.

Extends

StorageClient

Конструкторы

BlobClient(string, PipelineLike)

Создает экземпляр BLOBClient. Этот метод принимает закодированный URL-адрес или НЕкодированный URL-адрес, указывающий на большой двоичный объект. Строка ЗАкодированного URL-адреса не будет экранирована дважды, будут экранированы только специальные символы в пути URL-адреса. Если имя большого двоичного объекта включается? или %, имя большого двоичного объекта должно быть закодировано в URL-адресе.

BlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Создает экземпляр BLOBClient. Этот метод принимает закодированный URL-адрес или НЕкодированный URL-адрес, указывающий на большой двоичный объект. Строка ЗАкодированного URL-адреса не будет экранирована дважды, будут экранированы только специальные символы в пути URL-адреса. Если имя большого двоичного объекта включается? или %, имя большого двоичного объекта должно быть закодировано в URL-адресе.

BlobClient(string, string, string, StoragePipelineOptions)

Создает экземпляр BLOBClient из строки подключения.

Свойства

containerName

Имя контейнера хранилища, с которым связан большой двоичный объект.

name

Имя большого двоичного объекта.

Унаследованные свойства

accountName
credential

Например, AnonymousCredential, StorageSharedKeyCredential или любые учетные данные из пакета @azure/identity для проверки подлинности запросов к службе. Можно также предоставить объект, реализующий интерфейс TokenCredential. Если не указано, используется AnonymousCredential.

url

Закодированное строковое значение URL-адреса.

Методы

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Прервана ожидающая асинхронная операция копирования BLOB-объектов и оставляет целевой большой двоичный объект нулевой длиной и полными метаданными. Версия 2012-02-12 и более позднюю.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Асинхронно копирует большой двоичный объект в место назначения в учетной записи хранения. Этот метод возвращает длительный опрос операций, позволяющий ждать неограниченное время, пока копия не будет завершена. Вы также можете отменить копию перед его завершением, вызвав cancelOperation на опросе. Обратите внимание, что обратный вызов onProgress не будет вызываться, если операция завершается в первом запросе, и попытка отменить завершенную копию приведет к возникновению ошибки.

В версии 2012-02-12 и более поздних версиях источник операции копирования BLOB-объектов может быть зафиксированным BLOB-объектом в любой учетной записи хранения Azure. Начиная с версии 2015-02-21 источник операции копирования BLOB-объектов может быть файлом Azure в любой учетной записи хранения Azure. Только учетные записи хранения, созданные 7 июня 2012 г., позволяют операции копирования BLOB-объектов скопировать из другой учетной записи хранения.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob

Пример использования автоматического опроса:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

Пример использования опроса вручную:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

Пример использования обновлений хода выполнения:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

Пример использования измененного интервала опроса (по умолчанию — 15 секунд):

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

Пример отмены копирования:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
createSnapshot(BlobCreateSnapshotOptions)

Создает моментальный снимок большого двоичного объекта только для чтения.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob

delete(BlobDeleteOptions)

Помечает указанный большой двоичный объект или моментальный снимок для удаления. Большой двоичный объект позже удаляется во время сборки мусора. Обратите внимание, что для удаления большого двоичного объекта необходимо удалить все его моментальные снимки. Вы можете одновременно удалить оба объекта с помощью операции удаления BLOB-объектов.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

deleteIfExists(BlobDeleteOptions)

Помечает указанный большой двоичный объект или моментальный снимок для удаления, если он существует. Большой двоичный объект позже удаляется во время сборки мусора. Обратите внимание, что для удаления большого двоичного объекта необходимо удалить все его моментальные снимки. Вы можете одновременно удалить оба объекта с помощью операции удаления BLOB-объектов.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Удалите политику immutablility в большом двоичном объекте.

download(number, number, BlobDownloadOptions)

Считывает или загружает большой двоичный объект из системы, включая его метаданные и свойства. Вы также можете вызвать get BLOB-объект для чтения моментального снимка.

  • В Node.jsданные возвращаются в потоке, доступном для чтения, доступном для чтенияStreamBody
  • В браузерах данные возвращаются в объекте blobBody обещания

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure параллельно с буфером. Смещение и количество необязательными, загружает весь большой двоичный объект, если они не предоставлены.

Предупреждение. Буферы могут поддерживать только файлы до одного гигабайта в 32-разрядных системах или около двух гигабайтов в 64-разрядных системах из-за ограничений Node.js/V8. Для больших двоичных объектов, превышающих этот размер, рекомендуется downloadToFile.

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure параллельно с буфером. Смещение и количество необязательными, загружает весь большой двоичный объект, если они не предоставлены.

Предупреждение. Буферы могут поддерживать только файлы до одного гигабайта в 32-разрядных системах или около двух гигабайтов в 64-разрядных системах из-за ограничений Node.js/V8. Для больших двоичных объектов, превышающих этот размер, рекомендуется downloadToFile.

downloadToFile(string, number, number, BlobDownloadOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure в локальный файл. Завершается ошибкой, если указанный путь к файлу уже завершается. Смещение и число являются необязательными, передайте 0 и не определено соответственно, чтобы скачать весь большой двоичный объект.

exists(BlobExistsOptions)

Возвращает значение true, если ресурс BLOB-объектов Azure, представленный этим клиентом; False в противном случае.

ПРИМЕЧАНИЕ. Используйте эту функцию с осторожностью, так как существующий большой двоичный объект может быть удален другими клиентами или приложениями. Наоборот, новые большие двоичные объекты могут быть добавлены другими клиентами или приложениями после завершения этой функции.

generateSasUrl(BlobGenerateSasUrlOptions)

Доступно только для BLOBClient, созданного с использованием учетных данных общего ключа.

Создает универсальный код ресурса (SAS) подписанного URL-адреса службы BLOB-объектов на основе свойств клиента и параметров, переданных в. SAS подписан учетными данными общего ключа клиента.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

getAccountInfo(BlobGetAccountInfoOptions)

Операция Get Account Information возвращает имя sku и тип учетной записи для указанной учетной записи. Операция получения сведений об учетной записи доступна в версиях служб, начиная с версии 2018-03-28.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

getAppendBlobClient()

Создает объект AppendBlobClient.

getBlobLeaseClient(string)

Получите BlobLeaseClient, которая управляет арендой большого двоичного объекта.

getBlockBlobClient()

Создает объект BlockBlobClient.

getPageBlobClient()

Создает объект PageBlobClient.

getProperties(BlobGetPropertiesOptions)

Возвращает все пользовательские метаданные, стандартные свойства HTTP и системные свойства большого двоичного объекта. Он не возвращает содержимое большого двоичного объекта.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties

ПРЕДУПРЕЖДЕНИЕ. Объект metadata, возвращенный в ответе, будет иметь свои ключи в нижнем регистре, даже если они первоначально содержали прописные символы. Это отличается от ключей метаданных, возвращаемых методами ContainerClient, которые перечисляют большие двоичные объекты с помощью параметра includeMetadata, который будет хранить исходный регистр.

getTags(BlobGetTagsOptions)

Возвращает теги, связанные с базовым BLOB-объектом.

setAccessTier(string, BlobSetTierOptions)

Задает уровень в большом двоичном объекте. Операция разрешена на странице большого двоичного объекта в учетной записи хранения класса Premium и в блочных BLOB-объектах в учетной записи хранения BLOB-объектов (только локально избыточное хранилище). Уровень большого двоичного объекта страницы уровня "Премиум" определяет допустимый размер, операции ввода-вывода в секунду и пропускную способность большого двоичного объекта. Уровень блочного большого двоичного объекта определяет тип хранилища Hot/Cool/Archive. Эта операция не обновляет ETag большого двоичного объекта.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Задает системные свойства большого двоичного объекта.

Если для указанных заголовков HTTP большого двоичного объекта не задано никакого значения, эти заголовки HTTP БОЛЬШИХ двоичных объектов без значения будут удалены.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Задайте политику неизменяемости в большом двоичном объекте.

setLegalHold(boolean, BlobSetLegalHoldOptions)

Установите юридическое удержание большого двоичного объекта.

setMetadata(Metadata, BlobSetMetadataOptions)

Задает определяемые пользователем метаданные для указанного большого двоичного объекта в виде одной или нескольких пар "имя-значение".

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

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata

setTags(Tags, BlobSetTagsOptions)

Задает теги в базовом большом двоичном объекте. Большой двоичный объект может содержать до 10 тегов. Ключи тегов должны быть от 1 до 128 символов. Значения тегов должны быть от 0 до 256 символов. Допустимые символы тегов и символов значений включают буквы нижнего и верхнего регистра, цифры (0–9), пробел ("), плюс ("+"), минус ("-"), период ("."), косую черту ("/"), двоеточие (":"), равное ("=") и подчеркивание ('_').

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

Синхронная операция копирования из URL-адреса копирует большой двоичный объект или интернет-ресурс в новый большой двоичный объект. Он не вернет ответ до завершения копирования.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

undelete(BlobUndeleteOptions)

Восстанавливает содержимое и метаданные обратимого удаленного большого двоичного объекта и всех связанных обратимо удаленных моментальных снимков. Отмена удаления BLOB-объектов поддерживается только в версии 2017-07-29 или более поздней версии.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

withSnapshot(string)

Создает новый объект BLOBClient, идентичный источнику, но с указанной меткой времени моментального снимка. Укажите "" приведет к удалению моментального снимка и возврату клиента в базовый большой двоичный объект.

withVersion(string)

Создает новый объект BlobClient, указывающий на версию этого большого двоичного объекта. Укажите "" приведет к удалению идентификатора версии и возвратите клиенту базовый большой двоичный объект.

Сведения о конструкторе

BlobClient(string, PipelineLike)

Создает экземпляр BLOBClient. Этот метод принимает закодированный URL-адрес или НЕкодированный URL-адрес, указывающий на большой двоичный объект. Строка ЗАкодированного URL-адреса не будет экранирована дважды, будут экранированы только специальные символы в пути URL-адреса. Если имя большого двоичного объекта включается? или %, имя большого двоичного объекта должно быть закодировано в URL-адресе.

new BlobClient(url: string, pipeline: PipelineLike)

Параметры

url

string

Строка URL-адреса, указывающая на большой двоичный объект службы хранилища Azure, например "https://myaccount.blob.core.windows.net/mycontainer/blob". При использовании AnonymousCredential можно добавить SAS, например "https://myaccount.blob.core.windows.net/mycontainer/blob?sasString". Этот метод принимает закодированный URL-адрес или НЕкодированный URL-адрес, указывающий на большой двоичный объект. Строка ЗАкодированного URL-адреса не будет экранирована дважды, будут экранированы только специальные символы в пути URL-адреса. Однако если имя большого двоичного объекта включается? или %, имя большого двоичного объекта должно быть закодировано в URL-адресе. Например, большой двоичный объект с именем "my?blob%", URL-адрес должен быть "https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25".

pipeline
PipelineLike

Вызовите newPipeline() для создания конвейера по умолчанию или предоставления настраиваемого конвейера.

BlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Создает экземпляр BLOBClient. Этот метод принимает закодированный URL-адрес или НЕкодированный URL-адрес, указывающий на большой двоичный объект. Строка ЗАкодированного URL-адреса не будет экранирована дважды, будут экранированы только специальные символы в пути URL-адреса. Если имя большого двоичного объекта включается? или %, имя большого двоичного объекта должно быть закодировано в URL-адресе.

new BlobClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

Параметры

url

string

Строка клиента, указывающая на службу BLOB-объектов службы хранилища Azure, например "https://myaccount.blob.core.windows.net". При использовании AnonymousCredential можно добавить SAS, например "https://myaccount.blob.core.windows.net?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Например, AnonymousCredential, StorageSharedKeyCredential или любые учетные данные из пакета @azure/identity для проверки подлинности запросов к службе. Можно также предоставить объект, реализующий интерфейс TokenCredential. Если не указано, используется AnonymousCredential.

options
StoragePipelineOptions

Необязательный. Параметры настройки конвейера HTTP.

BlobClient(string, string, string, StoragePipelineOptions)

Создает экземпляр BLOBClient из строки подключения.

new BlobClient(connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)

Параметры

connectionString

string

Строка подключения учетной записи или строка подключения SAS учетной записи хранения Azure. [ Примечание. Строка подключения учетной записи может использоваться только в среде выполнения NODE.JS. ] Пример строки подключения учетной записи — пример строки подключения SAS DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.netBlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

containerName

string

Имя контейнера.

blobName

string

Имя BLOB-объекта.

options
StoragePipelineOptions

Необязательный. Параметры настройки конвейера HTTP.

Сведения о свойстве

containerName

Имя контейнера хранилища, с которым связан большой двоичный объект.

string containerName

Значение свойства

string

name

Имя большого двоичного объекта.

string name

Значение свойства

string

Сведения об унаследованном свойстве

accountName

accountName: string

Значение свойства

string

наследуется от storageClient.accountName

credential

Например, AnonymousCredential, StorageSharedKeyCredential или любые учетные данные из пакета @azure/identity для проверки подлинности запросов к службе. Можно также предоставить объект, реализующий интерфейс TokenCredential. Если не указано, используется AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Значение свойства

наследуется от StorageClient.credential

url

Закодированное строковое значение URL-адреса.

url: string

Значение свойства

string

наследуется от StorageClient.url

Сведения о методе

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Прервана ожидающая асинхронная операция копирования BLOB-объектов и оставляет целевой большой двоичный объект нулевой длиной и полными метаданными. Версия 2012-02-12 и более позднюю.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob

function abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptions): Promise<BlobAbortCopyFromURLResponse>

Параметры

copyId

string

Идентификатор операции копирования из URL-адреса.

options
BlobAbortCopyFromURLOptions

Необязательные параметры операции копирования BLOB-объектов из URL-адреса.

Возвращаемое значение

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Асинхронно копирует большой двоичный объект в место назначения в учетной записи хранения. Этот метод возвращает длительный опрос операций, позволяющий ждать неограниченное время, пока копия не будет завершена. Вы также можете отменить копию перед его завершением, вызвав cancelOperation на опросе. Обратите внимание, что обратный вызов onProgress не будет вызываться, если операция завершается в первом запросе, и попытка отменить завершенную копию приведет к возникновению ошибки.

В версии 2012-02-12 и более поздних версиях источник операции копирования BLOB-объектов может быть зафиксированным BLOB-объектом в любой учетной записи хранения Azure. Начиная с версии 2015-02-21 источник операции копирования BLOB-объектов может быть файлом Azure в любой учетной записи хранения Azure. Только учетные записи хранения, созданные 7 июня 2012 г., позволяют операции копирования BLOB-объектов скопировать из другой учетной записи хранения.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob

Пример использования автоматического опроса:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

Пример использования опроса вручную:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

Пример использования обновлений хода выполнения:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

Пример использования измененного интервала опроса (по умолчанию — 15 секунд):

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

Пример отмены копирования:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
function beginCopyFromURL(copySource: string, options?: BlobBeginCopyFromURLOptions): Promise<PollerLikeWithCancellation<PollOperationState<BlobBeginCopyFromURLResponse>, BlobBeginCopyFromURLResponse>>

Параметры

copySource

string

URL-адрес исходного BLOB-объекта Или файла Azure.

options
BlobBeginCopyFromURLOptions

Необязательные параметры для операции запуска копирования BLOB-объектов из URL-адреса.

Возвращаемое значение

createSnapshot(BlobCreateSnapshotOptions)

Создает моментальный снимок большого двоичного объекта только для чтения.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob

function createSnapshot(options?: BlobCreateSnapshotOptions): Promise<BlobCreateSnapshotResponse>

Параметры

options
BlobCreateSnapshotOptions

Необязательные параметры операции создания моментального снимка БОЛЬШОго двоичного объекта.

Возвращаемое значение

delete(BlobDeleteOptions)

Помечает указанный большой двоичный объект или моментальный снимок для удаления. Большой двоичный объект позже удаляется во время сборки мусора. Обратите внимание, что для удаления большого двоичного объекта необходимо удалить все его моментальные снимки. Вы можете одновременно удалить оба объекта с помощью операции удаления BLOB-объектов.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

function delete(options?: BlobDeleteOptions): Promise<BlobDeleteResponse>

Параметры

options
BlobDeleteOptions

Необязательные параметры операции удаления BLOB-объектов.

Возвращаемое значение

deleteIfExists(BlobDeleteOptions)

Помечает указанный большой двоичный объект или моментальный снимок для удаления, если он существует. Большой двоичный объект позже удаляется во время сборки мусора. Обратите внимание, что для удаления большого двоичного объекта необходимо удалить все его моментальные снимки. Вы можете одновременно удалить оба объекта с помощью операции удаления BLOB-объектов.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

function deleteIfExists(options?: BlobDeleteOptions): Promise<BlobDeleteIfExistsResponse>

Параметры

options
BlobDeleteOptions

Необязательные параметры операции удаления BLOB-объектов.

Возвращаемое значение

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Удалите политику immutablility в большом двоичном объекте.

function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions): Promise<BlobDeleteImmutabilityPolicyResponse>

Параметры

options
BlobDeleteImmutabilityPolicyOptions

Необязательные параметры для удаления политики неизменяемости в большом двоичном объекте.

Возвращаемое значение

download(number, number, BlobDownloadOptions)

Считывает или загружает большой двоичный объект из системы, включая его метаданные и свойства. Вы также можете вызвать get BLOB-объект для чтения моментального снимка.

  • В Node.jsданные возвращаются в потоке, доступном для чтения, доступном для чтенияStreamBody
  • В браузерах данные возвращаются в объекте blobBody обещания

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob

function download(offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

Параметры

offset

number

С какой позиции большого двоичного объекта для скачивания больше или равно 0

count

number

Сколько данных нужно скачать, больше 0. Будет скачивать в конец, когда не определено

options
BlobDownloadOptions

Необязательные параметры для операции скачивания BLOB-объектов.

Пример использования (Node.js):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await streamToBuffer(downloadBlockBlobResponse.readableStreamBody);
console.log("Downloaded blob content:", downloaded.toString());

async function streamToBuffer(readableStream) {
return new Promise((resolve, reject) => {
const chunks = [];
readableStream.on("data", (data) => {
chunks.push(data instanceof Buffer ? data : Buffer.from(data));
});
readableStream.on("end", () => {
resolve(Buffer.concat(chunks));
});
readableStream.on("error", reject);
});
}

Пример использования (браузер):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await blobToString(await downloadBlockBlobResponse.blobBody);
console.log(
  "Downloaded blob content",
  downloaded
);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}

Возвращаемое значение

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure параллельно с буфером. Смещение и количество необязательными, загружает весь большой двоичный объект, если они не предоставлены.

Предупреждение. Буферы могут поддерживать только файлы до одного гигабайта в 32-разрядных системах или около двух гигабайтов в 64-разрядных системах из-за ограничений Node.js/V8. Для больших двоичных объектов, превышающих этот размер, рекомендуется downloadToFile.

function downloadToBuffer(buffer: Buffer, offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

Параметры

buffer

Buffer

Буфер для заполнения должен иметь длину больше, чем число

offset

number

Положение блочного большого двоичного объекта для скачивания (в байтах)

count

number

Сколько данных (в байтах) нужно скачать. Будет загружаться в конец при передаче неопределенных

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Возвращаемое значение

Promise<Buffer>

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure параллельно с буфером. Смещение и количество необязательными, загружает весь большой двоичный объект, если они не предоставлены.

Предупреждение. Буферы могут поддерживать только файлы до одного гигабайта в 32-разрядных системах или около двух гигабайтов в 64-разрядных системах из-за ограничений Node.js/V8. Для больших двоичных объектов, превышающих этот размер, рекомендуется downloadToFile.

function downloadToBuffer(offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

Параметры

offset

number

Положение блочного большого двоичного объекта для скачивания (в байтах)

count

number

Сколько данных (в байтах) нужно скачать. Будет загружаться в конец при передаче неопределенных

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Возвращаемое значение

Promise<Buffer>

downloadToFile(string, number, number, BlobDownloadOptions)

ДОСТУПНО ТОЛЬКО В СРЕДЕ ВЫПОЛНЕНИЯ NODE.JS.

Загружает большой двоичный объект Azure в локальный файл. Завершается ошибкой, если указанный путь к файлу уже завершается. Смещение и число являются необязательными, передайте 0 и не определено соответственно, чтобы скачать весь большой двоичный объект.

function downloadToFile(filePath: string, offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

Параметры

filePath

string

offset

number

С какой позиции блочного большого двоичного объекта можно скачать.

count

number

Сколько данных нужно скачать. Будет скачиваться в конец при передаче неопределенного значения.

options
BlobDownloadOptions

Параметры скачивания BLOB-объектов.

Возвращаемое значение

Данные отклика для операции скачивания BLOB-объектов, но при использовании readableStreamBody установлено значение undefined, так как его содержимое уже считывается и записывается в локальный файл по указанному пути.

exists(BlobExistsOptions)

Возвращает значение true, если ресурс BLOB-объектов Azure, представленный этим клиентом; False в противном случае.

ПРИМЕЧАНИЕ. Используйте эту функцию с осторожностью, так как существующий большой двоичный объект может быть удален другими клиентами или приложениями. Наоборот, новые большие двоичные объекты могут быть добавлены другими клиентами или приложениями после завершения этой функции.

function exists(options?: BlobExistsOptions): Promise<boolean>

Параметры

options
BlobExistsOptions

параметры операции "Существует".

Возвращаемое значение

Promise<boolean>

generateSasUrl(BlobGenerateSasUrlOptions)

Доступно только для BLOBClient, созданного с использованием учетных данных общего ключа.

Создает универсальный код ресурса (SAS) подписанного URL-адреса службы BLOB-объектов на основе свойств клиента и параметров, переданных в. SAS подписан учетными данными общего ключа клиента.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

function generateSasUrl(options: BlobGenerateSasUrlOptions): Promise<string>

Параметры

options
BlobGenerateSasUrlOptions

Необязательные параметры.

Возвращаемое значение

Promise<string>

URI SAS, состоящий из URI ресурса, представленного этим клиентом, за которым следует созданный маркер SAS.

getAccountInfo(BlobGetAccountInfoOptions)

Операция Get Account Information возвращает имя sku и тип учетной записи для указанной учетной записи. Операция получения сведений об учетной записи доступна в версиях служб, начиная с версии 2018-03-28.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

function getAccountInfo(options?: BlobGetAccountInfoOptions): Promise<BlobGetAccountInfoResponse>

Параметры

options
BlobGetAccountInfoOptions

Параметры операции получения сведений об учетной записи службы.

Возвращаемое значение

Ответные данные для операции получения сведений об учетной записи службы.

getAppendBlobClient()

Создает объект AppendBlobClient.

function getAppendBlobClient(): AppendBlobClient

Возвращаемое значение

getBlobLeaseClient(string)

Получите BlobLeaseClient, которая управляет арендой большого двоичного объекта.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Параметры

proposeLeaseId

string

Первоначальный предлагаемый идентификатор аренды.

Возвращаемое значение

Новый объект BlobLeaseClient для управления арендой большого двоичного объекта.

getBlockBlobClient()

Создает объект BlockBlobClient.

function getBlockBlobClient(): BlockBlobClient

Возвращаемое значение

getPageBlobClient()

Создает объект PageBlobClient.

function getPageBlobClient(): PageBlobClient

Возвращаемое значение

getProperties(BlobGetPropertiesOptions)

Возвращает все пользовательские метаданные, стандартные свойства HTTP и системные свойства большого двоичного объекта. Он не возвращает содержимое большого двоичного объекта.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties

ПРЕДУПРЕЖДЕНИЕ. Объект metadata, возвращенный в ответе, будет иметь свои ключи в нижнем регистре, даже если они первоначально содержали прописные символы. Это отличается от ключей метаданных, возвращаемых методами ContainerClient, которые перечисляют большие двоичные объекты с помощью параметра includeMetadata, который будет хранить исходный регистр.

function getProperties(options?: BlobGetPropertiesOptions): Promise<BlobGetPropertiesResponse>

Параметры

options
BlobGetPropertiesOptions

Необязательные параметры для операции получения свойств.

Возвращаемое значение

getTags(BlobGetTagsOptions)

Возвращает теги, связанные с базовым BLOB-объектом.

function getTags(options?: BlobGetTagsOptions): Promise<BlobGetTagsResponse>

Параметры

Возвращаемое значение

setAccessTier(string, BlobSetTierOptions)

Задает уровень в большом двоичном объекте. Операция разрешена на странице большого двоичного объекта в учетной записи хранения класса Premium и в блочных BLOB-объектах в учетной записи хранения BLOB-объектов (только локально избыточное хранилище). Уровень большого двоичного объекта страницы уровня "Премиум" определяет допустимый размер, операции ввода-вывода в секунду и пропускную способность большого двоичного объекта. Уровень блочного большого двоичного объекта определяет тип хранилища Hot/Cool/Archive. Эта операция не обновляет ETag большого двоичного объекта.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier

function setAccessTier(tier: string, options?: BlobSetTierOptions): Promise<BlobSetTierResponse>

Параметры

tier

string

Уровень, который необходимо задать в большом двоичном объекте. Допустимые значения: "Горячий", "Холодный" или "Архив".

options
BlobSetTierOptions

Необязательные параметры для операции набора BLOB-объектов.

Возвращаемое значение

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Задает системные свойства большого двоичного объекта.

Если для указанных заголовков HTTP большого двоичного объекта не задано никакого значения, эти заголовки HTTP БОЛЬШИХ двоичных объектов без значения будут удалены.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties

function setHTTPHeaders(blobHTTPHeaders?: BlobHTTPHeaders, options?: BlobSetHTTPHeadersOptions): Promise<BlobSetHTTPHeadersResponse>

Параметры

blobHTTPHeaders
BlobHTTPHeaders

Если для указанных заголовков HTTP большого двоичного объекта не задано никакого значения, эти заголовки HTTP БОЛЬШИХ двоичных объектов без значения будут удалены. Общий заголовок, который необходимо задать, blobContentType позволяет браузеру предоставлять функциональные возможности на основе типа файла.

options
BlobSetHTTPHeadersOptions

Необязательные параметры операции набора заголовков HTTP для набора BLOB-объектов.

Возвращаемое значение

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Задайте политику неизменяемости в большом двоичном объекте.

function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions): Promise<BlobSetImmutabilityPolicyResponse>

Параметры

immutabilityPolicy
BlobImmutabilityPolicy
options
BlobSetImmutabilityPolicyOptions

Необязательные параметры для задания политики неизменяемости в большом двоичном объекте.

Возвращаемое значение

setLegalHold(boolean, BlobSetLegalHoldOptions)

Установите юридическое удержание большого двоичного объекта.

function setLegalHold(legalHoldEnabled: boolean, options?: BlobSetLegalHoldOptions): Promise<BlobSetLegalHoldResponse>

Параметры

legalHoldEnabled

boolean

options
BlobSetLegalHoldOptions

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

Возвращаемое значение

setMetadata(Metadata, BlobSetMetadataOptions)

Задает определяемые пользователем метаданные для указанного большого двоичного объекта в виде одной или нескольких пар "имя-значение".

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

См. https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata

function setMetadata(metadata?: Metadata, options?: BlobSetMetadataOptions): Promise<BlobSetMetadataResponse>

Параметры

metadata
Metadata

Замените существующие метаданные этим значением. Если значение, предоставленное существующими метаданными, не будет удалено.

options
BlobSetMetadataOptions

Необязательные параметры для задания операции метаданных.

Возвращаемое значение

setTags(Tags, BlobSetTagsOptions)

Задает теги в базовом большом двоичном объекте. Большой двоичный объект может содержать до 10 тегов. Ключи тегов должны быть от 1 до 128 символов. Значения тегов должны быть от 0 до 256 символов. Допустимые символы тегов и символов значений включают буквы нижнего и верхнего регистра, цифры (0–9), пробел ("), плюс ("+"), минус ("-"), период ("."), косую черту ("/"), двоеточие (":"), равное ("=") и подчеркивание ('_').

function setTags(tags: Tags, options?: BlobSetTagsOptions): Promise<BlobSetTagsResponse>

Параметры

tags
Tags

Возвращаемое значение

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

Синхронная операция копирования из URL-адреса копирует большой двоичный объект или интернет-ресурс в новый большой двоичный объект. Он не вернет ответ до завершения копирования.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

function syncCopyFromURL(copySource: string, options?: BlobSyncCopyFromURLOptions): Promise<BlobCopyFromURLResponse>

Параметры

copySource

string

Исходный URL-адрес для копирования, возможно, требуется для проверки подлинности.

Возвращаемое значение

undelete(BlobUndeleteOptions)

Восстанавливает содержимое и метаданные обратимого удаленного большого двоичного объекта и всех связанных обратимо удаленных моментальных снимков. Отмена удаления BLOB-объектов поддерживается только в версии 2017-07-29 или более поздней версии.

См. https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

function undelete(options?: BlobUndeleteOptions): Promise<BlobUndeleteResponse>

Параметры

options
BlobUndeleteOptions

Необязательные параметры операции отмены удаления BLOB-объектов.

Возвращаемое значение

withSnapshot(string)

Создает новый объект BLOBClient, идентичный источнику, но с указанной меткой времени моментального снимка. Укажите "" приведет к удалению моментального снимка и возврату клиента в базовый большой двоичный объект.

function withSnapshot(snapshot: string): BlobClient

Параметры

snapshot

string

Метка времени моментального снимка.

Возвращаемое значение

Новый объект BLOBClient, идентичный источнику, но с указанной меткой времени моментального снимка

withVersion(string)

Создает новый объект BlobClient, указывающий на версию этого большого двоичного объекта. Укажите "" приведет к удалению идентификатора версии и возвратите клиенту базовый большой двоичный объект.

function withVersion(versionId: string): BlobClient

Параметры

versionId

string

Идентификатор версии.

Возвращаемое значение

Новый объект BLOBClient, указывающий на версию этого большого двоичного объекта.