Werken met de hoofdcontainer
Een hoofdcontainer fungeert als een standaardcontainer voor uw opslagaccount. Een opslagaccount kan één hoofdcontainer hebben. De hoofdcontainer moet expliciet worden gemaakt en moet de naam $root
hebben.
Een blob die is opgeslagen in de hoofdcontainer, kan worden aangepakt zonder te verwijzen naar de naam van de hoofdcontainer, zodat een blob kan worden aangepakt op het hoogste niveau van de opslagaccounthiërarchie. U kunt bijvoorbeeld op de volgende manier verwijzen naar een blob die zich in de hoofdcontainer bevindt:
https://myaccount.blob.core.windows.net/mywebpage.html
De hoofdcontainer beheren
Als u de hoofdcontainer wilt gebruiken met uw opslagaccount, maakt u een nieuwe container met de naam $root
. In de volgende voorbeeldaanvraag ziet u hoe u de hoofdcontainer maakt:
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=
U kunt de hoofdcontainer ook verwijderen als u deze niet meer nodig hebt.
Net als andere containers kan de hoofdcontainer beschikbaar worden gemaakt voor anonieme openbare toegang. U kunt de container openbaar maken door de x-ms-blob-public-access
header in te stellen wanneer de container wordt gemaakt of door Set Container ACL aan te roepen nadat deze al bestaat. Zie Toegang tot containers en blobs beperken voor meer informatie.
Als de hoofdcontainer aanwezig is, wordt deze weergegeven wanneer u de bewerking Lijstcontainers uitvoert voor het opslagaccount.
Wanneer u een list-blobs-bewerking uitvoert op de hoofdcontainer, wordt de hoofdcontainer niet weergegeven in de resource-URL's voor de geretourneerde blobs. De volgende aanvraagsyntaxis laat zien hoe u de hoofdcontainer aanroept List Blobs
:
GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list HTTP/1.1
Belangrijk
Een blob in de hoofdcontainer kan geen schuine streep (/) in de naam bevatten.
Voorbeelden
In de volgende voorbeelden ziet u hoe u werkt met container- en blobresources, inclusief de hoofdcontainer:
GET-bewerkingen
De containers in een opslagaccount weergeven:
GET https://myaccount.blob.core.windows.net/?comp=list
Ga als volgt te werk om de eigenschappen van een container op te halen:
GET/HEAD https://myaccount.blob.core.windows.net/mycontainer?restype=container
De blobs in een container met de naam mycontainer
weergeven:
GET https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list
De blobs in de hoofdcontainer weergeven:
GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list
Een blob met de naam myfile
lezen uit een container met de naam mycontainer
:
GET https://myaccount.blob.core.windows.net/mycontainer/myfile
Een blob met de naam myphoto
uit de hoofdcontainer lezen:
GET https://myaccount.blob.core.windows.net/myphoto
U kunt ook expliciet verwijzen naar de hoofdcontainer:
GET https://myaccount.blob.core.windows.net/$root/myphoto
Blobmetagegevens lezen op een blob in de hoofdcontainer:
GET https://myaccount.blob.core.windows.net/myphoto?comp=metadata
U kunt ook expliciet verwijzen naar de hoofdcontainer:
GET https://myaccount.blob.core.windows.net/$root/myphoto?comp=metadata
Notitie
Zorg ervoor dat u geen schuine schuine streep (/) opgeeft wanneer u verwijst naar een blob onder de hoofdcontainer. Een URL zoals de volgende resulteert nu bijvoorbeeld in statuscode 400 (Ongeldige aanvraag):
https://myaccount.blob.core.windows.net/myblob/
In het bovenstaande voorbeeld leest de Blob-service de containernaam als myblob
en verwacht dat er een blobnaam wordt weergegeven na de afsluitende slash. De aanvraag is onjuist ingedeeld vanwege de ontbrekende blobnaam.
De volgende URL is geldig voor een bewerking op een blob in de hoofdcontainer:
https://myaccount.blob.core.windows.net/myblob
PUT-bewerkingen
Een container met de naam mycontainer
maken:
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container
Een blob met de naam myblob
maken in de hoofdcontainer:
PUT https://myaccount.blob.core.windows.net/myblob
U kunt ook expliciet de hoofdcontainer opgeven:
PUT https://myaccount.blob.core.windows.net/$root/myblob
Een blob met de naam myblob
maken in een container met de naam mycontainer
:
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob
Een blob met de naam photos/myphoto
maken in een container met de naam mycontainer
:
PUT https://myaccount.blob.core.windows.net/mycontainer/photos/myphoto
Metagegevens instellen voor een blob met de naam myblob
in de hoofdcontainer:
PUT https://myaccount.blob.core.windows.net/myblob?comp=metadata
DELETE-bewerkingen
Een container met de naam mycontainer
verwijderen:
DELETE https://myaccount.blob.core.windows.net/mycontainer?restype=container
De hoofdcontainer verwijderen:
DELETE https://myaccount.blob.core.windows.net/$root?restype=container
De blob myblob
verwijderen uit de hoofdcontainer:
DELETE https://myaccount.blob.core.windows.net/myblob
U kunt ook expliciet de hoofdcontainer opgeven:
DELETE https://myaccount.blob.core.windows.net/$root/myblob
Zie ook
HTTP-bewerkingen op blobserviceresources
Naamgeving van en verwijzen naar containers, blobs en metagegevens
Versiebeheer voor Azure Storage Services