Share via


BlobServiceClient class

Um BlobServiceClient representa um Cliente para o serviço Blob de Armazenamento do Azure que lhe permite manipular contentores de blobs.

Extends

StorageClient

Construtores

BlobServiceClient(string, PipelineLike)

Cria uma instância de BlobServiceClient.

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

Cria uma instância de BlobServiceClient.

Propriedades Herdadas

accountName
credential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos no serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

url

Valor de cadeia de URL codificado.

Métodos

createContainer(string, ContainerCreateOptions)

Criar um contentor de Blobs.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

deleteContainer(string, ContainerDeleteMethodOptions)

Elimina um contentor de Blobs.

findBlobsByTags(string, ServiceFindBlobByTagsOptions)

Devolve um iterador iterável assíncrono para localizar todos os blobs com etiqueta especificada na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os blobs nas páginas.

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

Exemplo com for await sintaxe:

let i = 1;
for await (const blob of blobServiceClient.findBlobsByTags("tagkey='tagvalue'")) {
  console.log(`Blob ${i++}: ${container.name}`);
}

Exemplo com iter.next():

let i = 1;
const iter = blobServiceClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Exemplo com byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
  if (response.blobs) {
    for (const blob of response.blobs) {
      console.log(`Blob ${i++}: ${blob.name}`);
    }
  }
}

Exemplo com a paginação com um marcador:

let i = 1;
let iterator = blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

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

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
  .findBlobsByTags("tagkey='tagvalue'")
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints blob names
if (response.blobs) {
  for (const blob of response.blobs) {
     console.log(`Blob ${i++}: ${blob.name}`);
  }
}
fromConnectionString(string, StoragePipelineOptions)

Cria uma instância de BlobServiceClient a partir da cadeia de ligação.

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponível apenas para BlobServiceClient construído com uma credencial de chave partilhada.

Gera um URI de Assinatura de Acesso Partilhado (SAS) da conta blob com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada do cliente.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

getAccountInfo(ServiceGetAccountInfoOptions)

A operação Obter Informações da Conta devolve o nome do sku e o tipo de conta da conta especificada. A operação Obter Informações da Conta está disponível em versões de serviço a partir da versão 2018-03-28.

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

getBlobBatchClient()

Cria um objeto BlobBatchClient para realizar operações em lote.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch

getContainerClient(string)

Cria um objeto ContainerClient

getProperties(ServiceGetPropertiesOptions)

Obtém as propriedades do serviço Blob de uma conta de armazenamento, incluindo propriedades para regras de Análise de Armazenamento e CORS (Partilha de Recursos Entre Origens).

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

getStatistics(ServiceGetStatisticsOptions)

Obtém estatísticas relacionadas com a replicação do serviço Blob. Só está disponível no ponto final de localização secundária quando a replicação georredundante de acesso de leitura está ativada para a conta de armazenamento.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

APENAS DISPONÍVEL AO UTILIZAR A AUTENTICAÇÃO DO TOKEN DO PORTADOR (TokenCredential).

Obtém uma chave de delegação de utilizador para o serviço Blob. Esta é apenas uma operação válida ao utilizar a autenticação de tokens de portador.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key

listContainers(ServiceListContainersOptions)

Devolve um iterador iterável assíncrono para listar todos os contentores na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os contentores nas páginas.

Exemplo com for await sintaxe:

let i = 1;
for await (const container of blobServiceClient.listContainers()) {
  console.log(`Container ${i++}: ${container.name}`);
}

Exemplo com iter.next():

let i = 1;
const iter = blobServiceClient.listContainers();
let containerItem = await iter.next();
while (!containerItem.done) {
  console.log(`Container ${i++}: ${containerItem.value.name}`);
  containerItem = await iter.next();
}

Exemplo com byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.listContainers().byPage({ maxPageSize: 20 })) {
  if (response.containerItems) {
    for (const container of response.containerItems) {
      console.log(`Container ${i++}: ${container.name}`);
    }
  }
}

Exemplo com a paginação com um marcador:

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

// Prints 2 container names
if (response.containerItems) {
  for (const container of response.containerItems) {
    console.log(`Container ${i++}: ${container.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 container names
if (response.containerItems) {
  for (const container of response.containerItems) {
     console.log(`Container ${i++}: ${container.name}`);
  }
}
setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Define propriedades para o ponto final de serviço blob de uma conta de armazenamento, incluindo propriedades para Análise de Armazenamento, regras CORS (Partilha de Recursos de Várias Origens) e definições de eliminação recuperável.

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

undeleteContainer(string, string, ServiceUndeleteContainerOptions)

Restaure um contentor de Blobs eliminado anteriormente. Esta API só é funcional se a Eliminação Recuperável de Contentores estiver ativada para a conta de armazenamento associada ao contentor.

Detalhes do Construtor

BlobServiceClient(string, PipelineLike)

Cria uma instância de BlobServiceClient.

new BlobServiceClient(url: string, pipeline: PipelineLike)

Parâmetros

url

string

Uma cadeia de cliente que aponta para o serviço de blobs do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".

pipeline
PipelineLike

Chame newPipeline() para criar um pipeline predefinido ou forneça um pipeline personalizado.

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

Cria uma instância de BlobServiceClient.

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

Parâmetros

url

string

Uma cadeia de cliente que aponta para o serviço de blobs do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos no serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

options
StoragePipelineOptions

Opcional. Opções para configurar o pipeline HTTP.

Exemplo com DefaultAzureCredential a partir de @azure/identity:

const account = "<storage account name>";

const defaultAzureCredential = new DefaultAzureCredential();

const blobServiceClient = new BlobServiceClient(
  `https://${account}.blob.core.windows.net`,
  defaultAzureCredential
);

Exemplo com um nome/chave de conta:

const account = "<storage account name>"
const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");

const blobServiceClient = new BlobServiceClient(
  `https://${account}.blob.core.windows.net`,
  sharedKeyCredential
);

Detalhes da Propriedade Herdada

accountName

accountName: string

Valor de Propriedade

string

Herdado de StorageClient.accountName

credential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos no serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor de Propriedade

Herdado de StorageClient.credential

url

Valor de cadeia de URL codificado.

url: string

Valor de Propriedade

string

Herdado de StorageClient.url

Detalhes de Método

createContainer(string, ContainerCreateOptions)

Criar um contentor de Blobs.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

function createContainer(containerName: string, options?: ContainerCreateOptions): Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>

Parâmetros

containerName

string

Nome do contentor a criar.

options
ContainerCreateOptions

Opções para configurar a operação de Criação de Contentores.

Devoluções

Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>

Resposta de criação de contentores e o cliente de contentor correspondente.

deleteContainer(string, ContainerDeleteMethodOptions)

Elimina um contentor de Blobs.

function deleteContainer(containerName: string, options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>

Parâmetros

containerName

string

Nome do contentor a eliminar.

options
ContainerDeleteMethodOptions

Opções para configurar a operação de Eliminação de Contentores.

Devoluções

Resposta de eliminação de contentor.

findBlobsByTags(string, ServiceFindBlobByTagsOptions)

Devolve um iterador iterável assíncrono para localizar todos os blobs com etiqueta especificada na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os blobs nas páginas.

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

Exemplo com for await sintaxe:

let i = 1;
for await (const blob of blobServiceClient.findBlobsByTags("tagkey='tagvalue'")) {
  console.log(`Blob ${i++}: ${container.name}`);
}

Exemplo com iter.next():

let i = 1;
const iter = blobServiceClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Exemplo com byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
  if (response.blobs) {
    for (const blob of response.blobs) {
      console.log(`Blob ${i++}: ${blob.name}`);
    }
  }
}

Exemplo com a paginação com um marcador:

let i = 1;
let iterator = blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

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

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
  .findBlobsByTags("tagkey='tagvalue'")
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints blob names
if (response.blobs) {
  for (const blob of response.blobs) {
     console.log(`Blob ${i++}: ${blob.name}`);
  }
}
function findBlobsByTags(tagFilterSqlExpression: string, options?: ServiceFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ServiceFindBlobsByTagsSegmentResponse, PageSettings>

Parâmetros

tagFilterSqlExpression

string

O parâmetro where permite ao autor da chamada consultar blobs cujas etiquetas correspondem a uma determinada expressão. A expressão especificada tem de ser avaliada como verdadeira para que um blob seja devolvido nos resultados. A regra de sintaxe de filtro[OData - ABNF] define a gramática formal para o valor do parâmetro de consulta where; no entanto, apenas um subconjunto da sintaxe do filtro OData é suportado no serviço Blob.

options
ServiceFindBlobByTagsOptions

Opções para localizar blobs por etiquetas.

Devoluções

fromConnectionString(string, StoragePipelineOptions)

Cria uma instância de BlobServiceClient a partir da cadeia de ligação.

static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): BlobServiceClient

Parâmetros

connectionString

string

Cadeia de ligação de conta ou uma cadeia de ligação SAS de uma conta de armazenamento do Azure. [ Nota - A cadeia de ligação de conta só pode ser utilizada no NODE.JS runtime. ] Exemplo de cadeia de ligação de conta -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemplo de cadeia de ligação 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

options
StoragePipelineOptions

Opcional. Opções para configurar o pipeline HTTP.

Devoluções

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponível apenas para BlobServiceClient construído com uma credencial de chave partilhada.

Gera um URI de Assinatura de Acesso Partilhado (SAS) da conta blob com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada do cliente.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string

Parâmetros

expiresOn

Date

Opcional. O momento em que a assinatura de acesso partilhado se torna inválida. Predefinição para uma hora mais tarde, se não for fornecida.

permissions
AccountSASPermissions

Especifica a lista de permissões a associar à SAS.

resourceTypes

string

Especifica os tipos de recursos associados à assinatura de acesso partilhado.

options
ServiceGenerateAccountSasUrlOptions

Parâmetros opcionais.

Devoluções

string

Um URI de SAS de conta que consiste no URI para o recurso representado por este cliente, seguido do token de SAS gerado.

getAccountInfo(ServiceGetAccountInfoOptions)

A operação Obter Informações da Conta devolve o nome do sku e o tipo de conta da conta especificada. A operação Obter Informações da Conta está disponível em versões de serviço a partir da versão 2018-03-28.

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

function getAccountInfo(options?: ServiceGetAccountInfoOptions): Promise<ServiceGetAccountInfoResponse>

Parâmetros

options
ServiceGetAccountInfoOptions

Opções para a operação Obter Informações da Conta do Serviço.

Devoluções

Dados de resposta para a operação Obter Informações da Conta do Serviço.

getBlobBatchClient()

Cria um objeto BlobBatchClient para realizar operações em lote.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch

function getBlobBatchClient(): BlobBatchClient

Devoluções

Um novo objeto BlobBatchClient para este serviço.

getContainerClient(string)

Cria um objeto ContainerClient

function getContainerClient(containerName: string): ContainerClient

Parâmetros

containerName

string

Um nome de contentor

Devoluções

Um novo objeto ContainerClient para o nome de contentor especificado.

Utilização de exemplo:

const containerClient = blobServiceClient.getContainerClient("<container name>");

getProperties(ServiceGetPropertiesOptions)

Obtém as propriedades do serviço Blob de uma conta de armazenamento, incluindo propriedades para regras de Análise de Armazenamento e CORS (Partilha de Recursos Entre Origens).

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

function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>

Parâmetros

options
ServiceGetPropertiesOptions

Opções para a operação Obter Propriedades do Serviço.

Devoluções

Dados de resposta para a operação Obter Propriedades do Serviço.

getStatistics(ServiceGetStatisticsOptions)

Obtém estatísticas relacionadas com a replicação do serviço Blob. Só está disponível no ponto final de localização secundária quando a replicação georredundante de acesso de leitura está ativada para a conta de armazenamento.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats

function getStatistics(options?: ServiceGetStatisticsOptions): Promise<ServiceGetStatisticsResponse>

Parâmetros

options
ServiceGetStatisticsOptions

Opções para a operação Obter Estatísticas do Serviço.

Devoluções

Dados de resposta para a operação Obter Estatísticas do Serviço.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

APENAS DISPONÍVEL AO UTILIZAR A AUTENTICAÇÃO DO TOKEN DO PORTADOR (TokenCredential).

Obtém uma chave de delegação de utilizador para o serviço Blob. Esta é apenas uma operação válida ao utilizar a autenticação de tokens de portador.

Veja https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key

function getUserDelegationKey(startsOn: Date, expiresOn: Date, options?: ServiceGetUserDelegationKeyOptions): Promise<ServiceGetUserDelegationKeyResponse>

Parâmetros

startsOn

Date

A hora de início da SAS de delegação de utilizador. Tem de estar dentro de 7 dias da hora atual

expiresOn

Date

A hora de fim da SAS de delegação de utilizador. Tem de estar dentro de 7 dias da hora atual

Devoluções

listContainers(ServiceListContainersOptions)

Devolve um iterador iterável assíncrono para listar todos os contentores na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os contentores nas páginas.

Exemplo com for await sintaxe:

let i = 1;
for await (const container of blobServiceClient.listContainers()) {
  console.log(`Container ${i++}: ${container.name}`);
}

Exemplo com iter.next():

let i = 1;
const iter = blobServiceClient.listContainers();
let containerItem = await iter.next();
while (!containerItem.done) {
  console.log(`Container ${i++}: ${containerItem.value.name}`);
  containerItem = await iter.next();
}

Exemplo com byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.listContainers().byPage({ maxPageSize: 20 })) {
  if (response.containerItems) {
    for (const container of response.containerItems) {
      console.log(`Container ${i++}: ${container.name}`);
    }
  }
}

Exemplo com a paginação com um marcador:

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

// Prints 2 container names
if (response.containerItems) {
  for (const container of response.containerItems) {
    console.log(`Container ${i++}: ${container.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 container names
if (response.containerItems) {
  for (const container of response.containerItems) {
     console.log(`Container ${i++}: ${container.name}`);
  }
}
function listContainers(options?: ServiceListContainersOptions): PagedAsyncIterableIterator<ContainerItem, ServiceListContainersSegmentResponse, PageSettings>

Parâmetros

options
ServiceListContainersOptions

Opções para listar contentores.

Devoluções

Um asyncIterableIterator que suporta a paginação.

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Define propriedades para o ponto final de serviço blob de uma conta de armazenamento, incluindo propriedades para Análise de Armazenamento, regras CORS (Partilha de Recursos de Várias Origens) e definições de eliminação recuperável.

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

function setProperties(properties: BlobServiceProperties, options?: ServiceSetPropertiesOptions): Promise<ServiceSetPropertiesResponse>

Parâmetros

options
ServiceSetPropertiesOptions

Opções para a operação Propriedades do Conjunto de Serviços.

Devoluções

Dados de resposta para a operação Propriedades do Conjunto de Serviços.

undeleteContainer(string, string, ServiceUndeleteContainerOptions)

Restaure um contentor de Blobs eliminado anteriormente. Esta API só é funcional se a Eliminação Recuperável de Contentores estiver ativada para a conta de armazenamento associada ao contentor.

function undeleteContainer(deletedContainerName: string, deletedContainerVersion: string, options?: ServiceUndeleteContainerOptions): Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>

Parâmetros

deletedContainerName

string

Nome do contentor eliminado anteriormente.

deletedContainerVersion

string

Versão do contentor eliminado anteriormente, utilizada para identificar exclusivamente o contentor eliminado.

options
ServiceUndeleteContainerOptions

Opções para configurar a operação de Restauro de Contentores.

Devoluções

Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>

Resposta de eliminação de contentor.