ContainerClient class

ContainerClient представляет URL-адрес контейнера службы хранилища Azure, позволяющий управлять его BLOB-объектами.

Extends

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

ContainerClient(string, PipelineLike)

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

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

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

ContainerClient(string, string, StoragePipelineOptions)

Создает экземпляр ContainerClient.

Свойства

accountName
containerName

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

credential

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

url

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

Методы

create(ContainerCreateOptions)

Создает новый контейнер в указанной учетной записи. Если контейнер с таким именем уже существует, операция завершается ошибкой.

createIfNotExists(ContainerCreateOptions)

Создает новый контейнер в указанной учетной записи. Если контейнер с таким же именем уже существует, он не изменяется.

delete(ContainerDeleteMethodOptions)

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

deleteBlob(string, ContainerDeleteBlobOptions)

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

deleteIfExists(ContainerDeleteMethodOptions)

Помечает указанный контейнер для удаления, если он существует. Контейнер и все большие двоичные объекты внутри него будут удалены позднее в процессе сборки мусора.

exists(ContainerExistsOptions)

Возвращает значение true, если ресурс контейнера Azure, представленный этим клиентом, существует; В противном случае значение false. Примечание. Используйте эту функцию с осторожностью, так как существующий контейнер может быть удален другими клиентами или приложениями. Наоборот, новые контейнеры с тем же именем могут добавляться другими клиентами или приложениями после завершения этой функции.

generateSasUrl(ContainerGenerateSasUrlOptions)

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

getAccessPolicy(ContainerGetAccessPolicyOptions)

Возвращает разрешения для указанного контейнера. Разрешения показывают, имеется ли общий доступ к данным контейнера. ПРЕДУПРЕЖДЕНИЕ. Дата JavaScript потенциально потеряет точность при синтаксическом анализе строк startsOn и expiresOn. Например, new Date("2018-12-31T03:44:23.8827891Z").toISOString() получит "2018-12-31T03:44:23.882Z".

getAppendBlobClient(string)

Создает <xref:AppendBlobClient>

getBlobBatchClient()

Создает объект BlobBatchClient для выполнения пакетных операций.

getBlobClient(string)

Создает <xref:BlobClient>

getBlobLeaseClient(string)

Получите объект , <xref:BlobLeaseClient> который управляет арендой контейнера.

getBlockBlobClient(string)

Создает <xref:BlockBlobClient>

getPageBlobClient(string)

Создает <xref:PageBlobClient>

getProperties(ContainerGetPropertiesOptions)

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

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Возвращает асинхронный итератор для перечисления всех больших двоичных объектов по иерархии. под указанной учетной записью. .byPage() возвращает асинхронный итератор для перечисления больших двоичных объектов по иерархии на страницах.

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

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
  }
}

Пример, использующий среду iter.next():

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
  }
  entity = await iter.next();
}

Пример, использующий среду byPage():

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
  }
}

Пример использования разбиения по страницам с максимальным размером страницы:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient.listBlobsByHierarchy("/", { prefix: "prefix2/sub1/"}).byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
  }
}
listBlobsFlat(ContainerListBlobsOptions)

Возвращает асинхронный итератор для вывода списка всех больших двоичных объектов в указанной учетной записи. .byPage() возвращает асинхронный итератор для перечисления больших двоичных объектов на страницах.

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

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Пример, использующий среду iter.next():

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Пример, использующий среду byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

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

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Задает разрешения для указанного контейнера. Разрешения показывают, имеется ли общий доступ к BLOB-объектам контейнера. При установке разрешений для контейнера существующие разрешения заменяются. Если доступ или containerAcl не предоставлены, существующий список управления доступом контейнера будет удален.

Для ввода в действие хранимой политики доступа в контейнере после настройки может потребоваться до 30 секунд. В этот промежуток времени попытка применения подписанного URL-адреса, связанного с хранимой политикой доступа, будет завершаться ошибкой с кодом состояния 403 (запрещено), пока политика доступа не станет активной.

setMetadata(Metadata, ContainerSetMetadataOptions)

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

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Создает новый блочный BLOB-объект или обновляет содержимое существующего блочного BLOB-объекта. Обновление существующего блочного большого двоичного объекта блокировки перезаписывает все существующие метаданные в большом двоичном объекте. Частичные обновления не поддерживаются; содержимое существующего большого двоичного объекта перезаписывается новым содержимым. Чтобы выполнить частичное обновление блочного BLOB-объекта, используйте <xref:BlockBlobClient.stageBlock> и <xref:BlockBlobClient.commitBlockList>.

Это непараллеллный метод отправки. Используйте <xref:BlockBlobClient.uploadFile>или <xref:BlockBlobClient.uploadBrowserData><xref:BlockBlobClient.uploadStream> для повышения производительности при отправке с параллелизмом.

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

ContainerClient(string, PipelineLike)

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

new ContainerClient(url: string, pipeline: PipelineLike)

Параметры

url

string

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

pipeline
PipelineLike

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

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

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

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

Параметры

url

string

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

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

options
StoragePipelineOptions

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

ContainerClient(string, string, StoragePipelineOptions)

Создает экземпляр ContainerClient.

new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)

Параметры

connectionString

string

Строка подключения к учетной записи или строка подключения SAS учетной записи хранения Azure. [ Примечание. Строка подключения учетной записи может использоваться только в NODE.JS среде выполнения. ] Пример строки подключения учетной записи —DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Пример строки подключения SAS — BlobEndpoint=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

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

options
StoragePipelineOptions

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

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

accountName

accountName: string

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

string

containerName

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

string containerName

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

string

credential

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

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

url

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

url: string

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

string

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

create(ContainerCreateOptions)

Создает новый контейнер в указанной учетной записи. Если контейнер с таким именем уже существует, операция завершается ошибкой.

function create(options?: ContainerCreateOptions)

Параметры

options
ContainerCreateOptions

Параметры операции создания контейнера.

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

const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);

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

createIfNotExists(ContainerCreateOptions)

Создает новый контейнер в указанной учетной записи. Если контейнер с таким же именем уже существует, он не изменяется.

function createIfNotExists(options?: ContainerCreateOptions)

Параметры

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

delete(ContainerDeleteMethodOptions)

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

function delete(options?: ContainerDeleteMethodOptions)

Параметры

options
ContainerDeleteMethodOptions

Параметры операции удаления контейнера.

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

deleteBlob(string, ContainerDeleteBlobOptions)

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

function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)

Параметры

blobName

string

options
ContainerDeleteBlobOptions

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

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

Данные ответа на удаление блочного BLOB-объекта.

deleteIfExists(ContainerDeleteMethodOptions)

Помечает указанный контейнер для удаления, если он существует. Контейнер и все большие двоичные объекты внутри него будут удалены позднее в процессе сборки мусора.

function deleteIfExists(options?: ContainerDeleteMethodOptions)

Параметры

options
ContainerDeleteMethodOptions

Параметры операции удаления контейнера.

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

exists(ContainerExistsOptions)

Возвращает значение true, если ресурс контейнера Azure, представленный этим клиентом, существует; В противном случае значение false. Примечание. Используйте эту функцию с осторожностью, так как существующий контейнер может быть удален другими клиентами или приложениями. Наоборот, новые контейнеры с тем же именем могут добавляться другими клиентами или приложениями после завершения этой функции.

function exists(options?: ContainerExistsOptions)

Параметры

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

Promise<boolean>

generateSasUrl(ContainerGenerateSasUrlOptions)

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

function generateSasUrl(options: ContainerGenerateSasUrlOptions)

Параметры

options
ContainerGenerateSasUrlOptions

Дополнительные параметры.

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

Promise<string>

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

getAccessPolicy(ContainerGetAccessPolicyOptions)

Возвращает разрешения для указанного контейнера. Разрешения показывают, имеется ли общий доступ к данным контейнера. ПРЕДУПРЕЖДЕНИЕ. Дата JavaScript потенциально потеряет точность при синтаксическом анализе строк startsOn и expiresOn. Например, new Date("2018-12-31T03:44:23.8827891Z").toISOString() получит "2018-12-31T03:44:23.882Z".

function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)

Параметры

options
ContainerGetAccessPolicyOptions

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

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

getAppendBlobClient(string)

Создает <xref:AppendBlobClient>

function getAppendBlobClient(blobName: string)

Параметры

blobName

string

Имя добавочного BLOB-объекта

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

getBlobBatchClient()

Создает объект BlobBatchClient для выполнения пакетных операций.

function getBlobBatchClient()

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

Новый объект BlobBatchClient для этого контейнера.

getBlobClient(string)

Создает <xref:BlobClient>

function getBlobClient(blobName: string)

Параметры

blobName

string

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

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

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

getBlobLeaseClient(string)

Получите объект , <xref:BlobLeaseClient> который управляет арендой контейнера.

function getBlobLeaseClient(proposeLeaseId?: string)

Параметры

proposeLeaseId

string

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

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

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

getBlockBlobClient(string)

Создает <xref:BlockBlobClient>

function getBlockBlobClient(blobName: string)

Параметры

blobName

string

Имя блочного BLOB-объекта

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

const content = "Hello world!";

const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);

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

getPageBlobClient(string)

Создает <xref:PageBlobClient>

function getPageBlobClient(blobName: string)

Параметры

blobName

string

Имя страничного BLOB-объекта

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

getProperties(ContainerGetPropertiesOptions)

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

function getProperties(options?: ContainerGetPropertiesOptions)

Параметры

options
ContainerGetPropertiesOptions

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

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

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Возвращает асинхронный итератор для перечисления всех больших двоичных объектов по иерархии. под указанной учетной записью. .byPage() возвращает асинхронный итератор для перечисления больших двоичных объектов по иерархии на страницах.

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

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
  }
}

Пример, использующий среду iter.next():

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
  }
  entity = await iter.next();
}

Пример, использующий среду byPage():

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
  }
}

Пример использования разбиения по страницам с максимальным размером страницы:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient.listBlobsByHierarchy("/", { prefix: "prefix2/sub1/"}).byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
  }
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions)

Параметры

delimiter

string

Символ или строка, используемая для определения виртуальной иерархии

options
ContainerListBlobsOptions

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

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

PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>

listBlobsFlat(ContainerListBlobsOptions)

Возвращает асинхронный итератор для вывода списка всех больших двоичных объектов в указанной учетной записи. .byPage() возвращает асинхронный итератор для перечисления больших двоичных объектов на страницах.

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

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Пример, использующий среду iter.next():

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Пример, использующий среду byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

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

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
function listBlobsFlat(options?: ContainerListBlobsOptions)

Параметры

options
ContainerListBlobsOptions

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

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

PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>

AsyncIterableIterator, поддерживающий разбиение по страницам.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Задает разрешения для указанного контейнера. Разрешения показывают, имеется ли общий доступ к BLOB-объектам контейнера. При установке разрешений для контейнера существующие разрешения заменяются. Если доступ или containerAcl не предоставлены, существующий список управления доступом контейнера будет удален.

Для ввода в действие хранимой политики доступа в контейнере после настройки может потребоваться до 30 секунд. В этот промежуток времени попытка применения подписанного URL-адреса, связанного с хранимой политикой доступа, будет завершаться ошибкой с кодом состояния 403 (запрещено), пока политика доступа не станет активной.

function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)

Параметры

access
PublicAccessType

Уровень общего доступа к данным в контейнере.

containerAcl

SignedIdentifier[]

Массив элементов, каждый из которых имеет уникальный идентификатор и сведения о политике доступа.

options
ContainerSetAccessPolicyOptions

Параметры для операции настройки политики доступа контейнера.

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

setMetadata(Metadata, ContainerSetMetadataOptions)

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

function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)

Параметры

metadata
Metadata

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

options
ContainerSetMetadataOptions

Параметры для операции установки метаданных в контейнере.

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

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Создает новый блочный BLOB-объект или обновляет содержимое существующего блочного BLOB-объекта. Обновление существующего блочного большого двоичного объекта блокировки перезаписывает все существующие метаданные в большом двоичном объекте. Частичные обновления не поддерживаются; содержимое существующего большого двоичного объекта перезаписывается новым содержимым. Чтобы выполнить частичное обновление блочного BLOB-объекта, используйте <xref:BlockBlobClient.stageBlock> и <xref:BlockBlobClient.commitBlockList>.

Это непараллеллный метод отправки. Используйте <xref:BlockBlobClient.uploadFile>или <xref:BlockBlobClient.uploadBrowserData><xref:BlockBlobClient.uploadStream> для повышения производительности при отправке с параллелизмом.

function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)

Параметры

blobName

string

Имя блочного BLOB-объекта для создания или обновления.

body

HttpRequestBody

Blob, string, ArrayBuffer, ArrayBufferView или функция, которая возвращает новый доступный для чтения поток, смещение которого от начала источника данных.

contentLength

number

Длина основного текста в байтах. Используйте Buffer.byteLength(), чтобы вычислить длину текста для строки, включающей символы, отличные от Base64/Hex.

options
BlockBlobUploadOptions

Параметры для настройки операции отправки блочного BLOB-объекта.

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

Promise<Object>

Блочный BLOB-объект отправляет ответные данные и соответствующий экземпляр BlockBlobClient.