Partager via


ContainerClient class

Un ContainerClient représente une URL vers le conteneur Stockage Azure qui vous permet de manipuler ses objets blob.

Extends

StorageClient

Constructeurs

ContainerClient(string, PipelineLike)

Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne fera PAS l’objet d’une séquence d’échappement deux fois, seuls les caractères spéciaux dans le chemin d’accès de l’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.

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

Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne fera PAS l’objet d’une séquence d’échappement deux fois, seuls les caractères spéciaux dans le chemin d’accès de l’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.

ContainerClient(string, string, StoragePipelineOptions)

Crée une instance de ContainerClient.

Propriétés

containerName

nom du conteneur.

Propriétés héritées

accountName
credential

Par exemple, AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du @azure/identity package pour authentifier les demandes adressées au service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. S’il n’est pas spécifié, AnonymousCredential est utilisé.

url

Valeur de chaîne d’URL encodée.

Méthodes

create(ContainerCreateOptions)

Crée un conteneur sous le compte spécifié. Si un conteneur portant le même nom existe déjà, l'opération échoue.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Règles de nommage : voir https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

createIfNotExists(ContainerCreateOptions)

Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, il n’est pas modifié.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Règles de nommage : voir https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

delete(ContainerDeleteMethodOptions)

Marque le conteneur spécifié pour la suppression. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

deleteBlob(string, ContainerDeleteBlobOptions)

Marque l’objet blob ou l’instantané spécifié pour suppression. L'objet blob est ensuite supprimé lors du garbage collection. Notez que pour supprimer un objet blob, vous devez supprimer tous ses instantanés. Vous pouvez supprimer les deux en même temps avec l’opération Supprimer l’objet blob.

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

deleteIfExists(ContainerDeleteMethodOptions)

Marque le conteneur spécifié pour suppression s’il existe. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

exists(ContainerExistsOptions)

Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false dans le cas contraire.

REMARQUE : utilisez cette fonction avec précaution, car un conteneur existant peut être supprimé par d’autres clients ou applications. Inversement, de nouveaux conteneurs portant le même nom peuvent être ajoutés par d’autres clients ou applications une fois cette fonction terminée.

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Retourne un itérateur asynchrone itérable pour rechercher tous les objets blob avec la balise spécifiée sous le conteneur spécifié.

.byPage() retourne un itérateur asynchrone itérable pour répertorier les objets blob dans les pages.

Exemple utilisant la for await syntaxe :

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

Exemple utilisant iter.next() :

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

Exemple utilisant byPage() :

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

Exemple d’utilisation de la pagination avec un marqueur :

let i = 1;
let iterator = containerClient.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 = containerClient
  .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}`);
  }
}
generateSasUrl(ContainerGenerateSasUrlOptions)

Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée.

Génère un URI de signature d’accès partagé (SAS) du service conteneur d’objets blob en fonction des propriétés clientes et des paramètres transmis. La signature SAS est signée par les informations d’identification de clé partagée du client.

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

getAccessPolicy(ContainerGetAccessPolicyOptions)

Obtient les autorisations pour le conteneur spécifié. Les autorisations indiquent si les données de conteneur sont accessibles publiquement.

AVERTISSEMENT : JavaScript Date risque de perdre la précision lors de l’analyse commenceOn et expire Des chaînes De données. Par exemple, new Date(« 2018-12-31T03:44:23.8827891Z »). toISOString() obtient « 2018-12-31T03:44:23.882Z ».

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

getAppendBlobClient(string)

Crée un AppendBlobClient

getBlobBatchClient()

Crée un objet BlobBatchClient pour effectuer des opérations par lots.

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

getBlobClient(string)

Crée un BlobClient

getBlobLeaseClient(string)

Obtenez un BlobLeaseClient qui gère les baux sur le conteneur.

getBlockBlobClient(string)

Crée un BlockBlobClient

getPageBlobClient(string)

Crée un PageBlobClient

getProperties(ContainerGetPropertiesOptions)

Retourne toutes les métadonnées et propriétés système définies par l’utilisateur pour le conteneur spécifié. Les données renvoyées ne comprennent pas la liste d'objets blob du conteneur.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

AVERTISSEMENT : L’objet metadata retourné dans la réponse aura ses clés en minuscules, même si elles contenaient à l’origine des caractères majuscules. Cela diffère des clés de métadonnées retournées par la listContainers méthode de BlobServiceClient à l’aide de l’option includeMetadata , qui conserve leur casse d’origine.

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Retourne un itérateur asynchrone itérable pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié.

.byPage() retourne un itérateur itérateur asynchrone pour répertorier les objets blob par hiérarchie dans les pages.

Exemple utilisant la for await syntaxe :

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

Exemple utilisant 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}`);
  }
  entity = await iter.next();
}

Exemple utilisant 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}`);
  }
}

Exemple d’utilisation de la pagination avec une taille de page maximale :

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}`);
  }
}
listBlobsFlat(ContainerListBlobsOptions)

Retourne un itérateur asynchrone itérable pour répertorier tous les objets blob sous le compte spécifié.

.byPage() retourne un itérateur asynchrone itérable pour répertorier les objets blob dans les pages.

Exemple utilisant la for await syntaxe :

// 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}`);
}

Exemple utilisant 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();
}

Exemple utilisant 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}`);
  }
}

Exemple d’utilisation de la pagination avec un marqueur :

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)

Définit les autorisations pour le conteneur spécifié. Les autorisations indiquent si les objets blob dans un conteneur sont accessibles publiquement.

Lorsque vous définissez des autorisations pour un conteneur, les autorisations existantes sont remplacées. Si aucun accès ou containerAcl n’est fourni, la liste de contrôle d’accès du conteneur existante est supprimée.

Lorsque vous établissez une stratégie d'accès stockée sur un conteneur, son application peut prendre trente secondes. Au cours de cet intervalle, une signature d'accès partagé associée à la stratégie d'accès stockée échoue avec le code d'état 403 (Interdit), jusqu'à ce que la stratégie d'accès devienne active.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

setMetadata(Metadata, ContainerSetMetadataOptions)

Définit une ou plusieurs paires nom-valeur définies par l’utilisateur pour le conteneur spécifié.

Si aucune option n’est fournie ou si aucune métadonnées n’est définie dans le paramètre, les métadonnées du conteneur sont supprimées.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez stageBlock et commitBlockList.

Il s’agit d’une méthode de chargement non parallèle. Utilisez uploadFile, uploadStream ou uploadBrowserData pour de meilleures performances avec le chargement concurrentiel.

Voir https://docs.microsoft.com/rest/api/storageservices/put-blob

Détails du constructeur

ContainerClient(string, PipelineLike)

Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne fera PAS l’objet d’une séquence d’échappement deux fois, seuls les caractères spéciaux dans le chemin d’accès de l’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.

new ContainerClient(url: string, pipeline: PipelineLike)

Paramètres

url

string

Chaîne d’URL pointant vers le conteneur Stockage Azure, telle que « https://myaccount.blob.core.windows.net/mycontainer". Vous pouvez ajouter une signature d’accès partagé si vous utilisez AnonymousCredential, par exemple «https://myaccount.blob.core.windows.net/mycontainer?sasString" ; ».

pipeline
PipelineLike

Appelez newPipeline() pour créer un pipeline par défaut ou fournissez un pipeline personnalisé.

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

Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne fera PAS l’objet d’une séquence d’échappement deux fois, seuls les caractères spéciaux dans le chemin d’accès de l’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.

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

Paramètres

url

string

Chaîne d’URL pointant vers le conteneur Stockage Azure, telle que « https://myaccount.blob.core.windows.net/mycontainer". Vous pouvez ajouter une signature d’accès partagé si vous utilisez AnonymousCredential, par exemple «https://myaccount.blob.core.windows.net/mycontainer?sasString" ; ».

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Par exemple, AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du @azure/identity package pour authentifier les demandes adressées au service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. S’il n’est pas spécifié, AnonymousCredential est utilisé.

options
StoragePipelineOptions

Optionnel. Options pour configurer le pipeline HTTP.

ContainerClient(string, string, StoragePipelineOptions)

Crée une instance de ContainerClient.

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

Paramètres

connectionString

string

Chaîne de connexion de compte ou chaîne de connexion SAP d’un compte de stockage Azure. [ Remarque : la chaîne de connexion de compte ne peut être utilisée que dans NODE.JS runtime. ] Exemple de chaîne de connexion de compte -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemple de chaîne de connexion 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

Nom du conteneur.

options
StoragePipelineOptions

Optionnel. Options pour configurer le pipeline HTTP.

Détails de la propriété

containerName

nom du conteneur.

string containerName

Valeur de propriété

string

Détails de la propriété héritée

accountName

accountName: string

Valeur de propriété

string

Hérité de StorageClient.accountName

credential

Par exemple, AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du @azure/identity package pour authentifier les demandes adressées au service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. S’il n’est pas spécifié, AnonymousCredential est utilisé.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valeur de propriété

Hérité de StorageClient.credential

url

Valeur de chaîne d’URL encodée.

url: string

Valeur de propriété

string

Hérité de StorageClient.url

Détails de la méthode

create(ContainerCreateOptions)

Crée un conteneur sous le compte spécifié. Si un conteneur portant le même nom existe déjà, l'opération échoue.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Règles de nommage : voir https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function create(options?: ContainerCreateOptions): Promise<ContainerCreateResponse>

Paramètres

options
ContainerCreateOptions

Options de l’opération de création de conteneur.

Exemple d’utilisation :

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

Retours

createIfNotExists(ContainerCreateOptions)

Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, il n’est pas modifié.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Règles de nommage : voir https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function createIfNotExists(options?: ContainerCreateOptions): Promise<ContainerCreateIfNotExistsResponse>

Paramètres

Retours

delete(ContainerDeleteMethodOptions)

Marque le conteneur spécifié pour la suppression. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

function delete(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>

Paramètres

options
ContainerDeleteMethodOptions

Options de l’opération de suppression de conteneur.

Retours

deleteBlob(string, ContainerDeleteBlobOptions)

Marque l’objet blob ou l’instantané spécifié pour suppression. L'objet blob est ensuite supprimé lors du garbage collection. Notez que pour supprimer un objet blob, vous devez supprimer tous ses instantanés. Vous pouvez supprimer les deux en même temps avec l’opération Supprimer l’objet blob.

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

function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions): Promise<BlobDeleteResponse>

Paramètres

blobName

string

options
ContainerDeleteBlobOptions

Options de l’opération De suppression d’objets blob.

Retours

Bloquer les données de réponse à la suppression d’objets blob.

deleteIfExists(ContainerDeleteMethodOptions)

Marque le conteneur spécifié pour suppression s’il existe. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

function deleteIfExists(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteIfExistsResponse>

Paramètres

options
ContainerDeleteMethodOptions

Options de l’opération de suppression de conteneur.

Retours

exists(ContainerExistsOptions)

Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false dans le cas contraire.

REMARQUE : utilisez cette fonction avec précaution, car un conteneur existant peut être supprimé par d’autres clients ou applications. Inversement, de nouveaux conteneurs portant le même nom peuvent être ajoutés par d’autres clients ou applications une fois cette fonction terminée.

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

Paramètres

Retours

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Retourne un itérateur asynchrone itérable pour rechercher tous les objets blob avec la balise spécifiée sous le conteneur spécifié.

.byPage() retourne un itérateur asynchrone itérable pour répertorier les objets blob dans les pages.

Exemple utilisant la for await syntaxe :

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

Exemple utilisant iter.next() :

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

Exemple utilisant byPage() :

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

Exemple d’utilisation de la pagination avec un marqueur :

let i = 1;
let iterator = containerClient.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 = containerClient
  .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?: ContainerFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ContainerFindBlobsByTagsSegmentResponse, PageSettings>

Paramètres

tagFilterSqlExpression

string

Le paramètre where permet à l’appelant d’interroger des objets blob dont les balises correspondent à une expression donnée. L’expression donnée doit être évaluée à true pour qu’un objet blob soit retourné dans les résultats. La règle de syntaxe de filtre [OData - ABNF] définit la grammaire formelle de la valeur du paramètre de requête where ; toutefois, seul un sous-ensemble de la syntaxe de filtre OData est pris en charge dans le service Blob.

options
ContainerFindBlobByTagsOptions

Options permettant de rechercher des objets blob par étiquettes.

Retours

generateSasUrl(ContainerGenerateSasUrlOptions)

Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée.

Génère un URI de signature d’accès partagé (SAS) du service conteneur d’objets blob en fonction des propriétés clientes et des paramètres transmis. La signature SAS est signée par les informations d’identification de clé partagée du client.

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

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

Paramètres

options
ContainerGenerateSasUrlOptions

Paramètres facultatifs.

Retours

Promise<string>

URI SAP constitué de l’URI de la ressource représentée par ce client, suivi du jeton SAP généré.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Obtient les autorisations pour le conteneur spécifié. Les autorisations indiquent si les données de conteneur sont accessibles publiquement.

AVERTISSEMENT : JavaScript Date risque de perdre la précision lors de l’analyse commenceOn et expire Des chaînes De données. Par exemple, new Date(« 2018-12-31T03:44:23.8827891Z »). toISOString() obtient « 2018-12-31T03:44:23.882Z ».

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

function getAccessPolicy(options?: ContainerGetAccessPolicyOptions): Promise<ContainerGetAccessPolicyResponse>

Paramètres

options
ContainerGetAccessPolicyOptions

Options de l’opération de stratégie d’accès d’obtention du conteneur.

Retours

getAppendBlobClient(string)

Crée un AppendBlobClient

function getAppendBlobClient(blobName: string): AppendBlobClient

Paramètres

blobName

string

Ajout d’un nom d’objet blob

Retours

getBlobBatchClient()

Crée un objet BlobBatchClient pour effectuer des opérations par lots.

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

function getBlobBatchClient(): BlobBatchClient

Retours

Nouvel objet BlobBatchClient pour ce conteneur.

getBlobClient(string)

Crée un BlobClient

function getBlobClient(blobName: string): BlobClient

Paramètres

blobName

string

Nom d’objet blob

Retours

Nouvel objet BlobClient pour le nom d’objet blob donné.

getBlobLeaseClient(string)

Obtenez un BlobLeaseClient qui gère les baux sur le conteneur.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Paramètres

proposeLeaseId

string

ID de bail initial proposé.

Retours

Nouvel objet BlobLeaseClient pour la gestion des baux sur le conteneur.

getBlockBlobClient(string)

Crée un BlockBlobClient

function getBlockBlobClient(blobName: string): BlockBlobClient

Paramètres

blobName

string

Nom d’objet blob de bloc

Exemple d’utilisation :

const content = "Hello world!";

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

Retours

getPageBlobClient(string)

Crée un PageBlobClient

function getPageBlobClient(blobName: string): PageBlobClient

Paramètres

blobName

string

Nom d’objet blob de page

Retours

getProperties(ContainerGetPropertiesOptions)

Retourne toutes les métadonnées et propriétés système définies par l’utilisateur pour le conteneur spécifié. Les données renvoyées ne comprennent pas la liste d'objets blob du conteneur.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

AVERTISSEMENT : L’objet metadata retourné dans la réponse aura ses clés en minuscules, même si elles contenaient à l’origine des caractères majuscules. Cela diffère des clés de métadonnées retournées par la listContainers méthode de BlobServiceClient à l’aide de l’option includeMetadata , qui conserve leur casse d’origine.

function getProperties(options?: ContainerGetPropertiesOptions): Promise<ContainerGetPropertiesResponse>

Paramètres

options
ContainerGetPropertiesOptions

Options de l’opération d’obtention des propriétés du conteneur.

Retours

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Retourne un itérateur asynchrone itérable pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié.

.byPage() retourne un itérateur itérateur asynchrone pour répertorier les objets blob par hiérarchie dans les pages.

Exemple utilisant la for await syntaxe :

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

Exemple utilisant 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}`);
  }
  entity = await iter.next();
}

Exemple utilisant 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}`);
  }
}

Exemple d’utilisation de la pagination avec une taille de page maximale :

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}`);
  }
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions): PagedAsyncIterableIterator<({ kind: "prefix" } & BlobPrefix) | ({ kind: "blob" } & BlobItem), ContainerListBlobHierarchySegmentResponse, PageSettings>

Paramètres

delimiter

string

Caractère ou chaîne utilisé pour définir la hiérarchie virtuelle

options
ContainerListBlobsOptions

Options permettant de répertorier les opérations d’objets blob.

Retours

listBlobsFlat(ContainerListBlobsOptions)

Retourne un itérateur asynchrone itérable pour répertorier tous les objets blob sous le compte spécifié.

.byPage() retourne un itérateur asynchrone itérable pour répertorier les objets blob dans les pages.

Exemple utilisant la for await syntaxe :

// 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}`);
}

Exemple utilisant 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();
}

Exemple utilisant 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}`);
  }
}

Exemple d’utilisation de la pagination avec un marqueur :

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): PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse, PageSettings>

Paramètres

options
ContainerListBlobsOptions

Options permettant de répertorier les objets blob.

Retours

AsyncIterableIterator qui prend en charge la pagination.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Définit les autorisations pour le conteneur spécifié. Les autorisations indiquent si les objets blob dans un conteneur sont accessibles publiquement.

Lorsque vous définissez des autorisations pour un conteneur, les autorisations existantes sont remplacées. Si aucun accès ou containerAcl n’est fourni, la liste de contrôle d’accès du conteneur existante est supprimée.

Lorsque vous établissez une stratégie d'accès stockée sur un conteneur, son application peut prendre trente secondes. Au cours de cet intervalle, une signature d'accès partagé associée à la stratégie d'accès stockée échoue avec le code d'état 403 (Interdit), jusqu'à ce que la stratégie d'accès devienne active.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions): Promise<ContainerSetAccessPolicyResponse>

Paramètres

access
PublicAccessType

Niveau d’accès public aux données dans le conteneur.

containerAcl

SignedIdentifier[]

Tableau d’éléments ayant chacun un ID unique et les détails de la stratégie d’accès.

options
ContainerSetAccessPolicyOptions

Options pour l’opération de stratégie d’accès de jeu de conteneurs.

Retours

setMetadata(Metadata, ContainerSetMetadataOptions)

Définit une ou plusieurs paires nom-valeur définies par l’utilisateur pour le conteneur spécifié.

Si aucune option n’est fournie ou si aucune métadonnées n’est définie dans le paramètre, les métadonnées du conteneur sont supprimées.

Voir https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions): Promise<ContainerSetMetadataResponse>

Paramètres

metadata
Metadata

Remplacez les métadonnées existantes par cette valeur. Si aucune valeur n’a été fournie, les métadonnées existantes seront supprimées.

options
ContainerSetMetadataOptions

Options de l’opération De définition des métadonnées de conteneur.

Retours

uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez stageBlock et commitBlockList.

Il s’agit d’une méthode de chargement non parallèle. Utilisez uploadFile, uploadStream ou uploadBrowserData pour de meilleures performances avec le chargement concurrentiel.

Voir https://docs.microsoft.com/rest/api/storageservices/put-blob

function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions): Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

Paramètres

blobName

string

Nom de l’objet blob de blocs à créer ou à mettre à jour.

body
HttpRequestBody

Blob, string, ArrayBuffer, ArrayBufferView ou une fonction qui retourne un nouveau flux lisible dont le décalage provient du début de la source de données.

contentLength

number

Longueur du corps en octets. Utilisez Buffer.byteLength() pour calculer la longueur du corps d’une chaîne incluant des caractères non codés en Base64/Hexadécimal.

options
BlockBlobUploadOptions

Options permettant de configurer l’opération Bloquer le chargement d’objets blob.

Retours

Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

Block Blob charge les données de réponse et l’instance BlockBlobClient correspondante.