Sdílet prostřednictvím


Vytvoření kontejneru objektů blob pomocí TypeScriptu

Objekty blob ve službě Azure Storage jsou uspořádané do kontejnerů. Než budete moct nahrát objekt blob, musíte nejprve vytvořit kontejner. Tento článek ukazuje, jak vytvořit kontejnery s klientskou knihovnou Azure Storage pro JavaScript.

Požadavky

  • Příklady v tomto článku předpokládají, že už máte projekt nastavený tak, aby fungoval s klientskou knihovnou Azure Blob Storage pro JavaScript. Další informace o nastavení projektu, včetně instalace balíčku, importu modulů a vytvoření autorizovaného klientského objektu pro práci s datovými prostředky, najdete v tématu Začínáme se službou Azure Blob Storage a TypeScriptem.
  • Autorizační mechanismus musí mít oprávnění k vytvoření kontejneru objektů blob. Další informace najdete v pokynech k autorizaci pro následující operaci rozhraní REST API:

Pojmenování kontejneru

Název kontejneru musí být platný název DNS, protože je součástí jedinečného identifikátoru URI použitého k adresování kontejneru nebo jeho objektů blob. Při pojmenování kontejneru postupujte podle těchto pravidel:

  • Názvy kontejnerů můžou mít délku 3 až 63 znaků.
  • Názvy kontejnerů musí začínat písmenem nebo číslicí a mohou obsahovat pouze malá písmena, číslice a znak pomlčky (-).
  • V názvech kontejnerů nejsou povolené po sobě jdoucí pomlčky.

Identifikátor URI pro prostředek kontejneru je formátovaný takto:

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

Vytvoření kontejneru

Pokud chcete vytvořit kontejner, vytvořte objekt BlobServiceClient nebo objekt ContainerClient a pak použijte jednu z následujících metod vytvoření:

Kontejnery se vytvářejí okamžitě pod účtem úložiště. Není možné vnořit jeden kontejner pod jiný. Pokud kontejner se stejným názvem již existuje, vyvolá se výjimka.

Následující příklad vytvoří kontejner asynchronně z 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;
}

Vysvětlení kořenového kontejneru

Kořenový kontejner s konkrétním názvem $rootumožňuje odkazovat na objekt blob na nejvyšší úrovni hierarchie účtu úložiště. Například můžete odkazovat na objekt blob bez použití názvu kontejneru v identifikátoru URI:

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

Kořenový kontejner musí být explicitně vytvořen nebo odstraněn. Ve výchozím nastavení se nevytvořil jako součást vytváření služby. Stejný kód zobrazený v předchozí části může vytvořit kořen. Název kontejneru je $root.

Zdroje informací

Další informace o vytvoření kontejneru pomocí klientské knihovny Azure Blob Storage pro JavaScript najdete v následujících zdrojích informací.

Operace rozhraní REST API

Sada Azure SDK pro JavaScript obsahuje knihovny, které jsou postavené na rozhraní Azure REST API a umožňují interakci s operacemi rozhraní REST API prostřednictvím známých paradigmat JavaScriptu. Metody klientské knihovny pro vytvoření kontejneru používají následující operaci rozhraní REST API:

Ukázky kódu