Delen via


Een blobcontainer maken met TypeScript

Blobs in Azure Storage worden georganiseerd in containers. Voordat u een blob kunt uploaden, moet u eerst een container maken. In dit artikel wordt beschreven hoe u containers maakt met de Azure Storage-clientbibliotheek voor JavaScript.

Vereisten

  • In de voorbeelden in dit artikel wordt ervan uitgegaan dat u al een project hebt ingesteld voor gebruik met de Azure Blob Storage-clientbibliotheek voor JavaScript. Zie Aan de slag met Azure Blob Storage en TypeScript voor meer informatie over het instellen van uw project, inclusief pakketinstallatie, het importeren van modules en het maken van een geautoriseerd clientobject voor gebruik met gegevensbronnen.
  • Het autorisatiemechanisme moet machtigingen hebben om een blobcontainer te maken. Zie de autorisatierichtlijnen voor de volgende REST API-bewerking voor meer informatie:

Over naamgeving van containers

Een containernaam moet een geldige DNS-naam zijn, omdat deze deel uitmaakt van de unieke URI die wordt gebruikt om de container of de bijbehorende blobs te adresseren. Volg deze regels bij het benoemen van een container:

  • Containernamen kunnen tussen 3 en 63 tekens lang zijn.
  • Containernamen moeten beginnen met een letter of cijfer en mogen alleen kleine letters, cijfers en het streepje (-) bevatten.
  • Opeenvolgende streepjes zijn niet toegestaan in containernamen.

De URI voor een containerresource is als volgt ingedeeld:

https://my-account-name.blob.core.windows.net/my-container-name

Een container maken

Als u een container wilt maken, maakt u een BlobServiceClient-object of ContainerClient-object en gebruikt u vervolgens een van de volgende methoden:

Containers worden direct onder het opslagaccount gemaakt. Het is niet mogelijk om één container onder een andere container te nesten. Er wordt een uitzondering gegenereerd als er al een container met dezelfde naam bestaat.

In het volgende voorbeeld wordt een container asynchroon gemaakt op basis van de BlobServiceClient:

async function createContainer(
  blobServiceClient: BlobServiceClient,
  containerName: string
): Promise<ContainerClient> {
  // public access at container level
  const options: ContainerCreateOptions = {
    access: 'container'
  };

  // creating client also creates container
  const {
    containerClient,
    containerCreateResponse
  }: {
    containerClient: ContainerClient;
    containerCreateResponse: ContainerCreateResponse;
  } = await blobServiceClient.createContainer(containerName, options);

  if (containerCreateResponse.errorCode)
    throw Error(containerCreateResponse.errorCode);

  console.log(`container ${containerName} created`);

  // do something with container
  // ...
  // containerClient.listBlobsFlat({    includeMetadata: true,
  // includeSnapshots: false,
  // includeTags: true,
  // includeVersions: false,
  // prefix: ''});

  return containerClient;
}

Inzicht in de hoofdcontainer

Met een hoofdcontainer met de specifieke naam $rootkunt u verwijzen naar een blob op het hoogste niveau van de opslagaccounthiërarchie. U kunt bijvoorbeeld verwijzen naar een blob zonder een containernaam in de URI te gebruiken:

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

De hoofdcontainer moet expliciet worden gemaakt of verwijderd. Deze wordt niet standaard gemaakt als onderdeel van het maken van de service. Dezelfde code die in de vorige sectie wordt weergegeven, kan de hoofdmap maken. De containernaam is $root.

Resources

Zie de volgende resources voor meer informatie over het maken van een container met behulp van de Azure Blob Storage-clientbibliotheek voor JavaScript.

REST API-bewerkingen

De Azure SDK voor JavaScript bevat bibliotheken die zijn gebaseerd op de Azure REST API, zodat u kunt communiceren met REST API-bewerkingen via bekende JavaScript-paradigma's. De clientbibliotheekmethoden voor het maken van een container gebruiken de volgende REST API-bewerking:

  • Container maken (REST API)

Codevoorbeelden