Exporter (0) Imprimer
Développer tout
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Affectation de noms et références aux conteneurs, objets BLOB et métadonnées

Mis à jour: novembre 2014

Cette rubrique décrit l'affectation de noms et les références aux conteneurs, objets BLOB, métadonnées et instantanés. Un compte de stockage peut contenir zéro ou plusieurs conteneurs. Un conteneur contient des propriétés, des métadonnées et zéro ou plusieurs objets BLOB. Un objet BLOB est une entité unique composée de données binaires, de propriétés et de métadonnées.

Noms de ressource

L'URI qui référence un conteneur ou un objet BLOB doit être unique. Dans la mesure où chaque nom de compte est unique, deux comptes peuvent être associés à des conteneurs de même nom. Toutefois, dans un compte de stockage donné, chaque conteneur doit avoir un nom unique. Chaque objet BLOB dans un conteneur donné doit également avoir un nom unique.

Si vous essayez de créer un conteneur ou un objet BLOB avec un nom non conforme aux règles d'affectation correspondantes, la demande échoue avec le code d'état 400 (Requête incorrecte).

ImportantImportant
Les noms d'objet BLOB et de conteneur sont transmis au service BLOB dans une URL. Certains caractères doivent être encodés en pourcentage pour apparaître dans une URL, via UTF-8 (de préférence) ou MBCS. Ce codage se produit automatiquement quand vous utilisez les bibliothèques .NET Windows Azure ou que vous construisez un objet Uri comprenant un nom d'objet BLOB ou de conteneur. Toutefois, il existe certains caractères non valides dans les chemins d'accès des URL même quand ils sont encodés. Ces caractères ne peuvent pas s'afficher dans les noms d'objet BLOB ou de conteneur. Les points de code tels que \uE000 sont valides dans les noms de fichier NTFS, mais ils constituent des caractères Unicode non valides et ne peuvent pas être utilisés. En outre, certains caractères ASCII ou Unicode, comme les caractères de contrôle (0x00 à 0x1F, \u0081, etc.), ne sont pas autorisés. Pour les règles régissant les chaînes Unicode dans HTTP/1.1, voir :

Noms de conteneur

Un nom de conteneur doit être un nom DNS valide et conforme aux règles d'affectation de noms suivantes :

  1. les noms de conteneur doivent commencer par une lettre ou un chiffre et ne peuvent contenir que des lettres, des chiffres et le tiret (-) ;

  2. chaque tiret (-) doit être immédiatement précédé et suivi d'une lettre ou d'un chiffre. Les tirets consécutifs ne sont pas autorisés dans les noms de conteneur ;

  3. toutes les lettres d'un nom de conteneur doivent être en minuscules ;

  4. un nom de conteneur doit comprendre entre 3 et 63 caractères.

Noms d'objet BLOB

Un nom d'objet BLOB peut contenir toutes les combinaisons de caractères, mais les caractères URL réservés doivent être interprétés en tant que caractères d'échappement. Un nom d'objet BLOB doit comprendre au moins un caractère et ne peut pas dépasser 1 024 caractères. Les noms d'objets BLOB respectent la casse.

noteRemarque
Évitez les noms d'objets BLOB qui se terminent par un point (.), une barre oblique (/) ou une séquence ou une combinaison des deux.

Le service BLOB est basé sur un schéma de stockage plat et non sur un schéma hiérarchique. Toutefois, vous pouvez spécifier un caractère ou un délimiteur de chaîne dans un nom d'objet BLOB pour créer une hiérarchie virtuelle. Par exemple, la liste suivante affiche des noms d'objets BLOB valides et uniques. Notez qu'une chaîne peut être valide comme nom d'objet BLOB et comme nom de répertoire virtuel dans le même conteneur :

  • /a

  • /a.txt

  • /a/b

  • /a/b.txt

Vous pouvez utiliser le caractère délimiteur lors de l'énumération des objets BLOB.

Noms de métadonnées

Les métadonnées d'une ressource de conteneur ou d'objet BLOB sont stockées en tant que paires nom-valeur associées à la ressource. Les noms de métadonnées doivent respecter les règles d'affectation de noms des identificateurs C#.

Notez que les noms de métadonnées conservent la casse avec laquelle ils ont été créés, mais ne la respecte plus quand ils sont définis ou lus. Si au moins deux en-têtes de métadonnées avec le même nom sont envoyés pour une ressource, le service BLOB retourne le code d'état 400 (Demande incorrecte).

Syntaxe d'URI de ressource

À chaque ressource correspond un URI de base, qui fait référence à la ressource elle-même.

Pour le compte de stockage, l'URI de base inclut le nom du compte seulement :

https://myaccount.blob.core.windows.net

Pour un conteneur, l'URI de base inclut le nom du compte et celui du conteneur :

https://myaccount.blob.core.windows.net/mycontainer

Pour un objet BLOB, l'URI de base inclut le nom du compte, celui du conteneur et celui de l'objet BLOB :

https://myaccount.blob.core.windows.net/mycontainer/myblob

Un compte de stockage peut avoir un conteneur racine, c'est-à-dire un conteneur par défaut qui peut être omis dans l'URI. Un objet BLOB du conteneur racine peut être référencé sans nommer le conteneur, ou le conteneur racine peut être explicitement référencé par son nom ($root). Pour plus d'informations, consultez Utilisation du conteneur racine (API REST). Les URI suivants se rapportent à un objet BLOB du conteneur racine :


https://myaccount.blob.core.windows.net/myblob
https://myaccount.blob.core.windows.net/$root/myblob

Instantanés d'objet BLOB

Un instantané est une version en lecture seule d'un objet BLOB stocké tel qu'il était à l'heure où l'instantané a été créé. Utilisez des instantanés pour créer une sauvegarde ou un point de contrôle d'un objet BLOB. Le nom d'un instantané d'objet BLOB inclut l'URI de l'objet BLOB de base ainsi qu'une valeur date-heure qui indique le moment où l'instantané a été créé.

Par exemple, supposons qu'un objet BLOB est associé à l'URI suivant :

https://myaccount.blob.core.windows.net/mycontainer/myblob

L'URI d'un instantané de cet objet BLOB a le format suivant :

https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>

La bibliothèque cliente .NET peut répertorier des instantanés sous forme d'objets CloudBlob quand vous appelez ListBlobs avec la propriété BlobListingDetails définie sur Snapshots.

Voir aussi

Afficher:
© 2014 Microsoft. Tous droits réservés.