Trabajar con el contenedor raíz

Actualizado: mayo de 2015

Un contenedor raíz actúa como contenedor predeterminado para la cuenta de almacenamiento. Una cuenta de almacenamiento puede tener un contenedor raíz. El contenedor raíz debe crearse explícitamente y se le debe asignar el nombre $root.

Un blob almacenado en el contenedor raíz se puede resolver sin hacer referencia al nombre del contenedor raíz, de forma que un blob se puede resolver en el nivel superior de la jerarquía de la cuenta de almacenamiento. Por ejemplo, ahora puede hacer referencia a un blob que reside en el contenedor raíz de la siguiente manera:

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

Para utilizar el contenedor raíz con la cuenta de almacenamiento, cree un nuevo contenedor denominado $root. La siguiente solicitud de ejemplo muestra cómo crear el contenedor raíz y cargar un blob en él:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));

CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer blobContainer = blobClient.GetContainerReference("$root");
blobContainer.Create();

CloudBlockBlob blob = blobContainer.GetBlockBlobReference("BlobInRoot.txt");
blob.UploadText("This is a blob in the root container.");

Como otros contenedores, el contenedor raíz puede estar disponible para acceso público anónimo. Si el contenedor raíz está presente, aparecerá cuando se enumeren los contenedores de la cuenta de almacenamiento. Cuando se enumeran blobs en el contenedor raíz, este no aparece en las direcciones URL de recursos para los objetos binarios devueltos. También puede eliminar el contenedor raíz si ya no lo necesita.

ImportantImportante
Los blobs en el contenedor raíz no pueden incluir una barra diagonal (/) en su nombre y se debe prestar atención con el fin de evitar incluir una barra diagonal al final (/) cuando se hace referencia a un blob en el contenedor raíz. Por ejemplo, si se usa este URI, se produce un error:

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

En el ejemplo anterior, el servicio Blob lee el nombre del contenedor como myblob y se espera ver un nombre de blob tras la barra diagonal final. La solicitud es incorrecta porque falta el nombre del blob.

Para crear un URI para un blob denominado myphoto que está en el contenedor raíz:

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

También puede hacer referencia explícitamente al contenedor raíz:

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

Vea también

Mostrar: