ContainerClient class
Um ContainerClient representa um URL para o contentor do Armazenamento do Azure que lhe permite manipular os blobs.
- Extends
Construtores
Container |
Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL. |
Container |
Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL. |
Container |
Cria uma instância do ContainerClient. |
Propriedades
account |
|
container |
O nome do contentor. |
credential | Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do |
url | Valor de cadeia de URL codificado. |
Métodos
create(Container |
Cria um novo contentor na conta especificada. Se o contentor com o mesmo nome já existir, a operação falhará. |
create |
Cria um novo contentor na conta especificada. Se o contentor com o mesmo nome já existir, não será alterado. |
delete(Container |
Marca o contentor especificado para eliminação. O contentor e quaisquer blobs contidos no mesmo são posteriormente eliminados durante a recolha de lixo. |
delete |
Marca o blob ou instantâneo especificado para eliminação. O blob é posteriormente eliminado durante a recolha de lixo. Tenha em atenção que, para eliminar um blob, tem de eliminar todos os respetivos instantâneos. Pode eliminar ambos ao mesmo tempo com a operação Eliminar Blob. |
delete |
Marca o contentor especificado para eliminação, se existir. O contentor e quaisquer blobs contidos no mesmo são posteriormente eliminados durante a recolha de lixo. |
exists(Container |
Devolve verdadeiro se o recurso de contentor do Azure representado por este cliente existir; falso de outra forma. NOTA: utilize esta função com cuidado, uma vez que um contentor existente pode ser eliminado por outros clientes ou aplicações. Os novos contentores vice-versa com o mesmo nome podem ser adicionados por outros clientes ou aplicações após a conclusão desta função. |
generate |
Disponível apenas para ContainerClient construído com uma credencial de chave partilhada. Gera um URI de Assinatura de Acesso Partilhado (SAS) do Serviço de Contentor de Blobs com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada do cliente. |
get |
Obtém as permissões para o contentor especificado. As permissões indicam se os dados de contentor podem ser acedidos publicamente. AVISO: a Data javaScript perderá potencialmente a precisão ao analisar startsOn e expira Em cadeias. Por exemplo, a nova Data("2018-12-31T03:44:23.8827891Z").toISOString() obterá "2018-12-31T03:44:23.882Z". |
get |
Cria um <xref:AppendBlobClient> |
get |
Cria um objeto BlobBatchClient para realizar operações em lote. |
get |
Cria um <xref:BlobClient> |
get |
Obtenha um que faça a <xref:BlobLeaseClient> gestão de concessões no contentor. |
get |
Cria um <xref:BlockBlobClient> |
get |
Cria um <xref:PageBlobClient> |
get |
Devolve todas as propriedades de sistema e metadados definidos pelo utilizador para o contentor especificado. Os dados devolvidos não incluem a lista de blobs do contentor. |
list |
Devolve um iterador iterável assíncrono para listar todos os blobs por hierarquia. na conta especificada. .byPage() devolve um iterador iterável assíncrono para listar os blobs por hierarquia em páginas. Exemplo com
Exemplo com
Exemplo com
Exemplo com a paginação com o tamanho máximo da página:
|
list |
Devolve um iterador iterável assíncrono para listar todos os blobs na conta especificada. .byPage() devolve um iterador iterável assíncrono para listar os blobs nas páginas. Exemplo com
Exemplo com
Exemplo com
Exemplo com a paginação com um marcador:
|
set |
Define as permissões para o contentor especificado. As permissões indicam se os blobs num contentor podem ser acedidos publicamente. Quando define permissões para um contentor, as permissões existentes são substituídas. Se não for fornecido qualquer acesso ou containerAcl, a ACL de contentor existente será removida. Quando estabelece uma política de acesso armazenada num contentor, pode demorar até 30 segundos a entrar em vigor. Durante este intervalo, uma assinatura de acesso partilhado associada à política de acesso armazenado falhará com o código de estado 403 (Proibido), até que a política de acesso fique ativa. |
set |
Define um ou mais pares nome-valor definidos pelo utilizador para o contentor especificado. Se não for fornecida nenhuma opção ou se não forem definidos metadados no parâmetro, os metadados de contentor serão removidos. |
upload |
Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente. Atualizar um blob de blocos existente substitui quaisquer metadados existentes no blob. As atualizações parciais não são suportadas; o conteúdo do blob existente é substituído pelo novo conteúdo. Para efetuar uma atualização parcial de um blob de blocos, utilize <xref:BlockBlobClient.stageBlock> e <xref:BlockBlobClient.commitBlockList>. Este é um método de carregamento não paralelo, utilize <xref:BlockBlobClient.uploadFile>ou <xref:BlockBlobClient.uploadStream><xref:BlockBlobClient.uploadBrowserData> para um melhor desempenho com o carregamento de simultaneidade. |
Detalhes do Construtor
ContainerClient(string, PipelineLike)
Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.
new ContainerClient(url: string, pipeline: PipelineLike)
Parâmetros
- url
-
string
Uma cadeia de URL a apontar para o contentor do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?sasString".
- pipeline
- PipelineLike
Chame newPipeline() para criar um pipeline predefinido ou forneça um pipeline personalizado.
ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
Cria uma instância do ContainerClient. Este método aceita um URL que aponta para um contentor. A cadeia de URL codificada NÃO será escapada duas vezes, apenas os carateres especiais no caminho do URL serão escapados. Se um nome de blob incluir ? ou %, o nome do blob tem de ser codificado no URL.
new ContainerClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
Parâmetros
- url
-
string
Uma cadeia de URL a apontar para o contentor do Armazenamento do Azure, como "https://myaccount.blob.core.windows.net/mycontainer". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer?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.
ContainerClient(string, string, StoragePipelineOptions)
Cria uma instância do ContainerClient.
new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)
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
- containerName
-
string
Nome do contentor.
- options
- StoragePipelineOptions
Opcional. Opções para configurar o pipeline HTTP.
Detalhes de Propriedade
accountName
accountName: string
Valor de Propriedade
string
containerName
O nome do contentor.
string containerName
Valor de Propriedade
string
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
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
url
Valor de cadeia de URL codificado.
url: string
Valor de Propriedade
string
Detalhes de Método
create(ContainerCreateOptions)
Cria um novo contentor na conta especificada. Se o contentor com o mesmo nome já existir, a operação falhará.
function create(options?: ContainerCreateOptions)
Parâmetros
- options
- ContainerCreateOptions
Opções para a operação de Criação de Contentores.
Utilização de exemplo:
const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);
Devoluções
Promise<ContainerCreateResponse>
createIfNotExists(ContainerCreateOptions)
Cria um novo contentor na conta especificada. Se o contentor com o mesmo nome já existir, não será alterado.
function createIfNotExists(options?: ContainerCreateOptions)
Parâmetros
- options
- ContainerCreateOptions
Devoluções
Promise<ContainerCreateIfNotExistsResponse>
delete(ContainerDeleteMethodOptions)
Marca o contentor especificado para eliminação. O contentor e quaisquer blobs contidos no mesmo são posteriormente eliminados durante a recolha de lixo.
function delete(options?: ContainerDeleteMethodOptions)
Parâmetros
- options
- ContainerDeleteMethodOptions
Opções para a operação Eliminação de Contentores.
Devoluções
Promise<ContainerDeleteResponse>
deleteBlob(string, ContainerDeleteBlobOptions)
Marca o blob ou instantâneo especificado para eliminação. O blob é posteriormente eliminado durante a recolha de lixo. Tenha em atenção que, para eliminar um blob, tem de eliminar todos os respetivos instantâneos. Pode eliminar ambos ao mesmo tempo com a operação Eliminar Blob.
function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)
Parâmetros
- blobName
-
string
- options
- ContainerDeleteBlobOptions
Opções para a operação de Eliminação de Blobs.
Devoluções
Promise<BlobDeleteResponse>
Bloquear dados de resposta de eliminação de blobs.
deleteIfExists(ContainerDeleteMethodOptions)
Marca o contentor especificado para eliminação, se existir. O contentor e quaisquer blobs contidos no mesmo são posteriormente eliminados durante a recolha de lixo.
function deleteIfExists(options?: ContainerDeleteMethodOptions)
Parâmetros
- options
- ContainerDeleteMethodOptions
Opções para a operação Eliminação de Contentores.
Devoluções
Promise<ContainerDeleteIfExistsResponse>
exists(ContainerExistsOptions)
Devolve verdadeiro se o recurso de contentor do Azure representado por este cliente existir; falso de outra forma. NOTA: utilize esta função com cuidado, uma vez que um contentor existente pode ser eliminado por outros clientes ou aplicações. Os novos contentores vice-versa com o mesmo nome podem ser adicionados por outros clientes ou aplicações após a conclusão desta função.
function exists(options?: ContainerExistsOptions)
Parâmetros
- options
- ContainerExistsOptions
Devoluções
Promise<boolean>
generateSasUrl(ContainerGenerateSasUrlOptions)
Disponível apenas para ContainerClient construído com uma credencial de chave partilhada. Gera um URI de Assinatura de Acesso Partilhado (SAS) do Serviço de Contentor de Blobs com base nas propriedades e parâmetros do cliente transmitidos. A SAS é assinada pela credencial de chave partilhada do cliente.
function generateSasUrl(options: ContainerGenerateSasUrlOptions)
Parâmetros
- options
- ContainerGenerateSasUrlOptions
Parâmetros opcionais.
Devoluções
Promise<string>
O URI de SAS que consiste no URI para o recurso representado por este cliente, seguido do token de SAS gerado.
getAccessPolicy(ContainerGetAccessPolicyOptions)
Obtém as permissões para o contentor especificado. As permissões indicam se os dados de contentor podem ser acedidos publicamente. AVISO: a Data javaScript perderá potencialmente a precisão ao analisar startsOn e expira Em cadeias. Por exemplo, a nova Data("2018-12-31T03:44:23.8827891Z").toISOString() obterá "2018-12-31T03:44:23.882Z".
function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)
Parâmetros
- options
- ContainerGetAccessPolicyOptions
Opções para a operação Container Get Access Policy.
Devoluções
Promise<ContainerGetAccessPolicyResponse>
getAppendBlobClient(string)
Cria um <xref:AppendBlobClient>
function getAppendBlobClient(blobName: string)
Parâmetros
- blobName
-
string
Um nome de blob de acréscimo
Devoluções
getBlobBatchClient()
Cria um objeto BlobBatchClient para realizar operações em lote.
function getBlobBatchClient()
Devoluções
Um novo objeto BlobBatchClient para este contentor.
getBlobClient(string)
Cria um <xref:BlobClient>
function getBlobClient(blobName: string)
Parâmetros
- blobName
-
string
Um nome de blob
Devoluções
Um novo objeto BlobClient para o nome do blob especificado.
getBlobLeaseClient(string)
Obtenha um que faça a <xref:BlobLeaseClient> gestão de concessões no contentor.
function getBlobLeaseClient(proposeLeaseId?: string)
Parâmetros
- proposeLeaseId
-
string
ID de concessão proposta inicial.
Devoluções
Um novo objeto BlobLeaseClient para gerir concessões no contentor.
getBlockBlobClient(string)
Cria um <xref:BlockBlobClient>
function getBlockBlobClient(blobName: string)
Parâmetros
- blobName
-
string
Um nome de blob de blocos
Utilização de exemplo:
const content = "Hello world!";
const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);
Devoluções
getPageBlobClient(string)
Cria um <xref:PageBlobClient>
function getPageBlobClient(blobName: string)
Parâmetros
- blobName
-
string
Um nome de blob de página
Devoluções
getProperties(ContainerGetPropertiesOptions)
Devolve todas as propriedades de sistema e metadados definidos pelo utilizador para o contentor especificado. Os dados devolvidos não incluem a lista de blobs do contentor.
function getProperties(options?: ContainerGetPropertiesOptions)
Parâmetros
- options
- ContainerGetPropertiesOptions
Opções para a operação Container Get Properties.
Devoluções
Promise<ContainerGetPropertiesResponse>
listBlobsByHierarchy(string, ContainerListBlobsOptions)
Devolve um iterador iterável assíncrono para listar todos os blobs por hierarquia. na conta especificada. .byPage() devolve um iterador iterável assíncrono para listar os blobs por hierarquia em páginas.
Exemplo com for await
sintaxe:
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}`);
}
}
Exemplo com 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();
}
Exemplo com 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}`);
}
}
Exemplo com a paginação com o tamanho máximo da página:
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)
Parâmetros
- delimiter
-
string
O caráter ou cadeia utilizado para definir a hierarquia virtual
- options
- ContainerListBlobsOptions
Opções para listar a operação de blobs.
Devoluções
PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>
listBlobsFlat(ContainerListBlobsOptions)
Devolve um iterador iterável assíncrono para listar todos os blobs na conta especificada. .byPage() devolve um iterador iterável assíncrono para listar os blobs nas páginas.
Exemplo com for await
sintaxe:
// 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}`);
}
Exemplo com 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();
}
Exemplo com 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}`);
}
}
Exemplo com a paginação com um marcador:
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)
Parâmetros
- options
- ContainerListBlobsOptions
Opções para listar blobs.
Devoluções
PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>
Um asyncIterableIterator que suporta a paginação.
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)
Define as permissões para o contentor especificado. As permissões indicam se os blobs num contentor podem ser acedidos publicamente. Quando define permissões para um contentor, as permissões existentes são substituídas. Se não for fornecido qualquer acesso ou containerAcl, a ACL de contentor existente será removida.
Quando estabelece uma política de acesso armazenada num contentor, pode demorar até 30 segundos a entrar em vigor. Durante este intervalo, uma assinatura de acesso partilhado associada à política de acesso armazenado falhará com o código de estado 403 (Proibido), até que a política de acesso fique ativa.
function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)
Parâmetros
- access
- PublicAccessType
O nível de acesso público aos dados no contentor.
- containerAcl
Matriz de elementos com um ID exclusivo e detalhes da política de acesso.
- options
- ContainerSetAccessPolicyOptions
Opções para a operação de Política de Acesso do Conjunto de Contentores.
Devoluções
Promise<ContainerSetAccessPolicyResponse>
setMetadata(Metadata, ContainerSetMetadataOptions)
Define um ou mais pares nome-valor definidos pelo utilizador para o contentor especificado. Se não for fornecida nenhuma opção ou se não forem definidos metadados no parâmetro, os metadados de contentor serão removidos.
function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)
Parâmetros
- metadata
- Metadata
Substitua os metadados existentes por este valor. Se não for fornecido nenhum valor, os metadados existentes serão removidos.
- options
- ContainerSetMetadataOptions
Opções para a operação de Metadados do Conjunto de Contentores.
Devoluções
Promise<ContainerSetMetadataResponse>
uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)
Cria um novo blob de blocos ou atualiza o conteúdo de um blob de blocos existente. Atualizar um blob de blocos existente substitui quaisquer metadados existentes no blob. As atualizações parciais não são suportadas; o conteúdo do blob existente é substituído pelo novo conteúdo. Para efetuar uma atualização parcial de um blob de blocos, utilize <xref:BlockBlobClient.stageBlock> e <xref:BlockBlobClient.commitBlockList>.
Este é um método de carregamento não paralelo, utilize <xref:BlockBlobClient.uploadFile>ou <xref:BlockBlobClient.uploadStream><xref:BlockBlobClient.uploadBrowserData> para um melhor desempenho com o carregamento de simultaneidade.
function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)
Parâmetros
- blobName
-
string
Nome do blob de blocos a criar ou atualizar.
- body
-
HttpRequestBody
Blob, cadeia, ArrayBuffer, ArrayBufferView ou uma função que devolve um novo fluxo Legível cujo desvio é do início da origem de dados.
- contentLength
-
number
Comprimento do corpo em bytes. Utilize Buffer.byteLength() para calcular o comprimento do corpo de uma cadeia, incluindo carateres não codificados por Base64/Hex.
- options
- BlockBlobUploadOptions
Opções para configurar a operação De Carregamento de Blobs de Blocos.
Devoluções
Promise<Object>
Bloquear dados de resposta de carregamento de Blobs e a instância blockBlobClient correspondente.
Azure SDK for JavaScript