Exportar (0) Imprimir
Expandir todo

Trabajar con el contenedor raíz (API de REST)

Actualizado: noviembre de 2013

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:

shttps://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 solicitud de ejemplo siguiente muestra cómo crear el contenedor raíz:

Request Syntax:
PUT https://myaccount.blob.core.windows.net/$root?restype=container HTTP/1.1

Request Headers:
x-ms-version: 2011-08-18
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT
x-ms-meta-Name: StorageSample
x-ms-blob-public-access: container
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=

También puede eliminar el contenedor raíz si ya no lo necesita.

Como otros contenedores, el contenedor raíz puede estar disponible para acceso público anónimo. Puede hacer público el contenedor estableciendo el encabezado x-ms-blob-public-access en el momento de crearlo o llamando a Set Container ACL (API de REST) después de haberlo creado. Para obtener más información, vea Acceso restringido a contenedores y blobs.

Si existe el contenedor raíz, aparecerá cuando realice la operación List Containers (API de REST) en la cuenta de almacenamiento.

Cuando se realiza una operación List Blobs (API de REST) en el contenedor raíz, este no aparece en las direcciones URL de los recursos para los blobs devueltos. En la siguiente sintaxis de solicitud se muestra cómo llamar a List Blobs en el contenedor raíz:

GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list HTTP/1.1
ImportantImportante
Los nombres de los blobs del contenedor raíz no pueden incluir barras diagonales (/).

En los ejemplos siguientes se muestra cómo trabajar con los recursos de contenedor y de blob, incluido el contenedor raíz:

Para obtener los contenedores de una cuenta de almacenamiento:

GET https://myaccount.blob.core.windows.net/?comp=list

Para obtener las propiedades de un contenedor:

GET/HEAD https://myaccount.blob.core.windows.net/mycontainer?restype=container

Para obtener los blobs de un contenedor denominado mycontainer:

GET https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list

Para obtener los blobs del contenedor raíz:

GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list

Para leer un blob denominado myfile de un contenedor denominado mycontainer:

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

Para leer un blob denominado myphoto del contenedor raíz:

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

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

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

Para leer los metadatos de un blob del contenedor raíz:

GET https://myaccount.blob.core.windows.net/myphoto?comp=metadata

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

GET https://myaccount.blob.core.windows.net/$root/myphoto?comp=metadata
noteNota
Tenga cuidado de no incluir una barra diagonal final (/) cuando haga referencia a un blob del contenedor raíz. Por ejemplo, una dirección URL como la siguiente produce el código de estado 400 (Solicitud incorrecta):

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

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

La dirección URL siguiente es válida para una operación en un blob del contenedor raíz:

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

Para crear un contenedor denominado mycontainer:


PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container

Para crear un blob denominado myblob en el contenedor raíz:


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

También puede especificar explícitamente el contenedor raíz:


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

Para crear un blob denominado myblob en un contenedor denominado mycontainer:

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

Para crear un blob denominado photos/myphoto en un contenedor denominado mycontainer:

PUT https://myaccount.blob.core.windows.net/mycontainer/photos/myphoto

Para establecer los metadatos en un blob denominado myblob del contenedor raíz:


PUT https://myaccount.blob.core.windows.net/myblob?comp=metadata

Para eliminar un contenedor denominado mycontainer:


DELETE https://myaccount.blob.core.windows.net/mycontainer?restype=container

Para eliminar el contenedor raíz:


DELETE https://myaccount.blob.core.windows.net/$root?restype=container

Para eliminar el blob myblob del contenedor raíz:


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

También puede especificar explícitamente el contenedor raíz:


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

Vea también

Mostrar:
© 2014 Microsoft