ContainerClient class
Un ContainerClient représente une URL vers le conteneur stockage Azure qui vous permet de manipuler ses objets blob.
- Extends
Constructeurs
| Container |
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois, seuls les caractères spéciaux dans le chemin d’URL seront échappés. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL. |
| Container |
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois, seuls les caractères spéciaux dans le chemin d’URL seront échappés. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL. |
| Container |
Crée une instance de ContainerClient. |
Propriétés
| account |
|
| container |
Nom du conteneur. |
| credential | Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package |
| url | Valeur de chaîne d’URL encodée. |
Méthodes
| create(Container |
Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, l’opération échoue. |
| create |
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é. |
| delete(Container |
Marque le conteneur spécifié pour suppression. Le conteneur et tous les objets blob contenus dans celui-ci sont supprimés ultérieurement pendant le garbage collection. |
| delete |
Marque l’objet blob ou l’instantané spécifié pour suppression. L’objet blob est supprimé ultérieurement pendant le 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. |
| delete |
Marque le conteneur spécifié pour la suppression s’il existe. Le conteneur et tous les objets blob contenus dans celui-ci sont supprimés ultérieurement pendant le garbage collection. |
| exists(Container |
Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false sinon. REMARQUE : utilisez cette fonction avec soin, 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. |
| generate |
Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée. Génère un URI SAP (Blob Container Service Shared Access Signature) basé sur les propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client. |
| get |
Obtient les autorisations pour le conteneur spécifié. Les autorisations indiquent si les données de conteneur sont accessibles publiquement. AVERTISSEMENT : La date JavaScript perd potentiellement la précision lorsque l’analyse démarreOn et expire les chaînesOn. Par exemple, nouvelle Date(« 2018-12-31T03:44:23.8827891Z »). toISOString() obtient « 2018-12-31T03:44:23.882Z ». |
| get |
Crée un <xref:AppendBlobClient> |
| get |
Crée un objet BlobBatchClient pour effectuer des opérations par lots. |
| get |
Crée un <xref:BlobClient> |
| get |
Obtenez un <xref:BlobLeaseClient> qui gère les baux sur le conteneur. |
| get |
Crée un <xref:BlockBlobClient> |
| get |
Crée un <xref:PageBlobClient> |
| get |
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 retournées n’incluent pas la liste des objets blob du conteneur. |
| list |
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob par hiérarchie dans les pages. Exemple utilisant
Exemple utilisant
Exemple utilisant
Exemple utilisant la pagination avec une taille de page maximale :
|
| list |
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob dans les pages. Exemple utilisant
Exemple utilisant
Exemple utilisant
Exemple d’utilisation de la pagination avec un marqueur :
|
| set |
Définit les autorisations pour le conteneur spécifié. Les autorisations indiquent si les objets blob d’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, la prise en compte peut prendre jusqu’à 30 secondes. Pendant 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. |
| set |
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 aucune métadonnées définie dans le paramètre, les métadonnées du conteneur sont supprimées. |
| upload |
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 sur 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 des objets blob de blocs, utilisez <xref:BlockBlobClient.stageBlock> et <xref:BlockBlobClient.commitBlockList>. Il s’agit d’une méthode de chargement non parallèle, utilisez <xref:BlockBlobClient.uploadFile>, <xref:BlockBlobClient.uploadStream> ou <xref:BlockBlobClient.uploadBrowserData> pour de meilleures performances avec le chargement concurrentiel. |
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 sera PAS échappée deux fois, seuls les caractères spéciaux dans le chemin d’URL seront échappés. 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 SAP 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 sera PAS échappée deux fois, seuls les caractères spéciaux dans le chemin d’URL seront échappés. 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 SAP si vous utilisez AnonymousCredential, par exemple «https://myaccount.blob.core.windows.net/mycontainer?sasString".
- credential
-
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package @azure/identity pour authentifier les demandes auprès du service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. Si ce n’est pas spécifié, AnonymousCredential est utilisé.
- options
- StoragePipelineOptions
Optionnel. Options de configuration du 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 - exemple de chaîne de connexion SAS DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net - 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 de configuration du pipeline HTTP.
Détails de la propriété
accountName
accountName: string
Valeur de propriété
string
containerName
Nom du conteneur.
string containerName
Valeur de propriété
string
credential
Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package @azure/identity pour authentifier les demandes auprès du service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. Si ce n’est pas spécifié, AnonymousCredential est utilisé.
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Valeur de propriété
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
url
Valeur de chaîne d’URL encodée.
url: string
Valeur de propriété
string
Détails de la méthode
create(ContainerCreateOptions)
Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, l’opération échoue.
function create(options?: ContainerCreateOptions)
Paramètres
- options
- ContainerCreateOptions
Options d’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
Promise<ContainerCreateResponse>
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é.
function createIfNotExists(options?: ContainerCreateOptions)
Paramètres
- options
- ContainerCreateOptions
Retours
Promise<ContainerCreateIfNotExistsResponse>
delete(ContainerDeleteMethodOptions)
Marque le conteneur spécifié pour suppression. Le conteneur et tous les objets blob contenus dans celui-ci sont supprimés ultérieurement pendant le garbage collection.
function delete(options?: ContainerDeleteMethodOptions)
Paramètres
- options
- ContainerDeleteMethodOptions
Options d’opération de suppression de conteneur.
Retours
Promise<ContainerDeleteResponse>
deleteBlob(string, ContainerDeleteBlobOptions)
Marque l’objet blob ou l’instantané spécifié pour suppression. L’objet blob est supprimé ultérieurement pendant le 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.
function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)
Paramètres
- blobName
-
string
- options
- ContainerDeleteBlobOptions
Options d’opération de suppression d’objets blob.
Retours
Promise<BlobDeleteResponse>
Données de réponse de suppression d’objets blob de blocs.
deleteIfExists(ContainerDeleteMethodOptions)
Marque le conteneur spécifié pour la suppression s’il existe. Le conteneur et tous les objets blob contenus dans celui-ci sont supprimés ultérieurement pendant le garbage collection.
function deleteIfExists(options?: ContainerDeleteMethodOptions)
Paramètres
- options
- ContainerDeleteMethodOptions
Options d’opération de suppression de conteneur.
Retours
Promise<ContainerDeleteIfExistsResponse>
exists(ContainerExistsOptions)
Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false sinon. REMARQUE : utilisez cette fonction avec soin, 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)
Paramètres
- options
- ContainerExistsOptions
Retours
Promise<boolean>
generateSasUrl(ContainerGenerateSasUrlOptions)
Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée. Génère un URI SAP (Blob Container Service Shared Access Signature) basé sur les propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client.
function generateSasUrl(options: ContainerGenerateSasUrlOptions)
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 : La date JavaScript perd potentiellement la précision lorsque l’analyse démarreOn et expire les chaînesOn. Par exemple, nouvelle Date(« 2018-12-31T03:44:23.8827891Z »). toISOString() obtient « 2018-12-31T03:44:23.882Z ».
function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)
Paramètres
- options
- ContainerGetAccessPolicyOptions
Options pour l’opération de stratégie d’accès get du conteneur.
Retours
Promise<ContainerGetAccessPolicyResponse>
getAppendBlobClient(string)
Crée un <xref:AppendBlobClient>
function getAppendBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’objet blob d’ajout
Retours
getBlobBatchClient()
Crée un objet BlobBatchClient pour effectuer des opérations par lots.
function getBlobBatchClient()
Retours
Nouvel objet BlobBatchClient pour ce conteneur.
getBlobClient(string)
Crée un <xref:BlobClient>
function getBlobClient(blobName: string)
Paramètres
- blobName
-
string
Un nom d’objet blob
Retours
Nouvel objet BlobClient pour le nom d’objet blob donné.
getBlobLeaseClient(string)
Obtenez un <xref:BlobLeaseClient> qui gère les baux sur le conteneur.
function getBlobLeaseClient(proposeLeaseId?: string)
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 <xref:BlockBlobClient>
function getBlockBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’objet blob de blocs
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 <xref:PageBlobClient>
function getPageBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’un objet blob de pages
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 retournées n’incluent pas la liste des objets blob du conteneur.
function getProperties(options?: ContainerGetPropertiesOptions)
Paramètres
- options
- ContainerGetPropertiesOptions
Options pour l’opération Obtenir les propriétés du conteneur.
Retours
Promise<ContainerGetPropertiesResponse>
listBlobsByHierarchy(string, ContainerListBlobsOptions)
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob par hiérarchie dans les pages.
Exemple utilisant 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}, last modified - ${item.properties.lastModified}`);
}
}
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}, last modified - ${item.properties.lastModified}`);
}
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}, last modified - ${blob.properties.lastModified}`);
}
}
Exemple utilisant 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}, last modified - ${blob.properties.lastModified}`);
}
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions)
Paramètres
- delimiter
-
string
Caractère ou chaîne utilisé pour définir la hiérarchie virtuelle
- options
- ContainerListBlobsOptions
Options pour répertorier les opérations d’objets blob.
Retours
PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>
listBlobsFlat(ContainerListBlobsOptions)
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob dans les pages.
Exemple utilisant 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)
Paramètres
- options
- ContainerListBlobsOptions
Options de liste des objets blob.
Retours
PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>
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 d’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, la prise en compte peut prendre jusqu’à 30 secondes. Pendant 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.
function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)
Paramètres
- access
- PublicAccessType
Niveau d’accès public aux données dans le conteneur.
- containerAcl
Tableau d’éléments ayant chacun un ID unique et des détails de la stratégie d’accès.
- options
- ContainerSetAccessPolicyOptions
Options d’opération de stratégie d’accès de jeu de conteneurs.
Retours
Promise<ContainerSetAccessPolicyResponse>
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 aucune métadonnées définie dans le paramètre, les métadonnées du conteneur sont supprimées.
function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)
Paramètres
- metadata
- Metadata
Remplacez les métadonnées existantes par cette valeur. Si aucune valeur n’est fournie, les métadonnées existantes seront supprimées.
- options
- ContainerSetMetadataOptions
Options pour l’opération de métadonnées de jeu de conteneurs.
Retours
Promise<ContainerSetMetadataResponse>
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 sur 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 des objets blob de blocs, utilisez <xref:BlockBlobClient.stageBlock> et <xref:BlockBlobClient.commitBlockList>.
Il s’agit d’une méthode de chargement non parallèle, utilisez <xref:BlockBlobClient.uploadFile>, <xref:BlockBlobClient.uploadStream> ou <xref:BlockBlobClient.uploadBrowserData> pour de meilleures performances avec le chargement concurrentiel.
function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)
Paramètres
- blobName
-
string
Nom de l’objet blob de blocs à créer ou à mettre à jour.
- body
-
HttpRequestBody
Blob, string, ArrayBuffer, ArrayBufferView ou fonction qui retourne un nouveau flux lisible dont le décalage est 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, y compris les caractères non codés en base64/hex.
- options
- BlockBlobUploadOptions
Options permettant de configurer l’opération de chargement d’objets blob de blocs.
Retours
Promise<Object>
Objet blob de blocs charge les données de réponse et l’instance BlockBlobClient correspondante.