Sdílet prostřednictvím


ContainerClient class

ContainerClient představuje adresu URL kontejneru Azure Storage, která umožňuje manipulovat s jeho objekty blob.

Extends

StorageClient

Konstruktory

ContainerClient(string, PipelineLike)

Vytvoří instanci ContainerClient. Tato metoda přijímá adresu URL odkazující na kontejner. Zakódovaný řetězec adresy URL nebude dvakrát uchvácený, pouze speciální znaky v cestě URL budou unikovány. Pokud název objektu blob obsahuje ? nebo %, název objektu blob musí být zakódovaný v adrese URL.

ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Vytvoří instanci ContainerClient. Tato metoda přijímá adresu URL odkazující na kontejner. Zakódovaný řetězec adresy URL nebude dvakrát uchvácený, pouze speciální znaky v cestě URL budou unikovány. Pokud název objektu blob obsahuje ? nebo %, název objektu blob musí být zakódovaný v adrese URL.

ContainerClient(string, string, StoragePipelineOptions)

Vytvoří instanci ContainerClient.

Vlastnosti

containerName

Název kontejneru.

Zděděné vlastnosti

accountName
credential

Například AnonymousCredential, StorageSharedKeyCredential nebo jakékoli přihlašovací údaje z @azure/identity balíčku k ověřování požadavků na službu. Můžete také zadat objekt, který implementuje rozhraní TokenCredential. Pokud není zadáno, použije se AnonymníCredential.

url

Zakódovaná hodnota řetězce adresy URL.

Metody

create(ContainerCreateOptions)

Vytvoří nový kontejner pod zadaným účtem. Pokud kontejner se stejným názvem již existuje, operace selže.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Pravidla pojmenování: Viz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

createIfNotExists(ContainerCreateOptions)

Vytvoří nový kontejner pod zadaným účtem. Pokud kontejner se stejným názvem již existuje, nezmění se.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Pravidla pojmenování: Viz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

delete(ContainerDeleteMethodOptions)

Označí zadaný kontejner pro odstranění. Kontejner a všechny objekty blob v něm obsažené se později odstraní během uvolňování paměti.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container.

deleteBlob(string, ContainerDeleteBlobOptions)

Označí zadaný objekt blob nebo snímek pro odstranění. Objekt blob se později odstraní během uvolňování paměti. Upozorňujeme, že pokud chcete odstranit objekt blob, musíte odstranit všechny jeho snímky. Obojí můžete odstranit současně pomocí operace Odstranění objektu blob.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob.

deleteIfExists(ContainerDeleteMethodOptions)

Označí zadaný kontejner pro odstranění, pokud existuje. Kontejner a všechny objekty blob v něm obsažené se později odstraní během uvolňování paměti.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container.

exists(ContainerExistsOptions)

Vrátí hodnotu true, pokud existuje prostředek kontejneru Azure reprezentovaný tímto klientem. v opačném případě false.

POZNÁMKA: Tuto funkci používejte opatrně, protože existující kontejner může být odstraněn jinými klienty nebo aplikacemi. Naopak nové kontejnery se stejným názvem můžou po dokončení této funkce přidat jiní klienti nebo aplikace.

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Vrátí asynchronní iterátor pro vyhledání všech objektů blob se zadanou značkou v zadaném kontejneru.

.byPage() vrátí asynchronní iterovatelný iterátor pro výpis objektů blob na stránkách.

Příklad použití for await syntaxe:

let i = 1;
for await (const blob of containerClient.findBlobsByTags("tagkey='tagvalue'")) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Příklad použití iter.next():

let i = 1;
const iter = containerClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Příklad použití byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
  if (response.blobs) {
    for (const blob of response.blobs) {
      console.log(`Blob ${i++}: ${blob.name}`);
    }
  }
}

Příklad použití stránkování se značkou:

let i = 1;
let iterator = containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
if (response.blobs) {
  for (const blob of response.blobs) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = containerClient
  .findBlobsByTags("tagkey='tagvalue'")
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints blob names
if (response.blobs) {
  for (const blob of response.blobs) {
     console.log(`Blob ${i++}: ${blob.name}`);
  }
}
generateSasUrl(ContainerGenerateSasUrlOptions)

K dispozici pouze pro ContainerClient vytvořený s přihlašovacími údaji sdíleného klíče.

Vygeneruje identifikátor URI sdíleného přístupového podpisu (SAS) služby Blob Container Service na základě předaných vlastností a parametrů klienta. Sas je podepsaný přihlašovacími údaji sdíleného klíče klienta.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Získá oprávnění pro zadaný kontejner. Oprávnění označují, jestli je možné veřejně přistupovat k datům kontejneru.

UPOZORNĚNÍ: JavaScript Date potenciálně ztratí přesnost při parsování startsOn a expiresOn řetězců. Například nový Date("2018-12-31T03:44:23.8827891Z").toISOString() získá "2018-12-31T03:44:23.882Z".

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl.

getAppendBlobClient(string)

Vytvoří AppendBlobClient.

getBlobBatchClient()

Vytvoří objekt BlobBatchClient pro provádění dávkových operací.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch.

getBlobClient(string)

Vytvoří objekt BlobClient.

getBlobLeaseClient(string)

Získejte objekt BlobLeaseClient , který spravuje zapůjčení kontejneru.

getBlockBlobClient(string)

Vytvoří BlockBlobClient.

getPageBlobClient(string)

Vytvoří PageBlobClient.

getProperties(ContainerGetPropertiesOptions)

Vrátí všechna uživatelem definovaná metadata a systémové vlastnosti pro zadaný kontejner. Vrácená data nezahrnují seznam objektů blob kontejneru.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties.

UPOZORNĚNÍ: Objekt metadata vrácený v odpovědi bude mít své klíče malými písmeny, i když původně obsahovaly velká písmena. To se liší od klíčů metadat vrácených metodou listContainersBlobServiceClient pomocí includeMetadata možnosti, která si zachová jejich původní velikost písmen.

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Vrátí asynchronní iterátor pro výpis všech objektů blob podle hierarchie. pod zadaným účtem.

.byPage() vrátí asynchronní iterátor pro výpis objektů blob podle hierarchie na stránkách.

Příklad použití for await syntaxe:

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
}

Příklad použití iter.next():

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
  entity = await iter.next();
}

Příklad použití byPage():

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}

Příklad použití stránkování s maximální velikostí stránky:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient
  .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
  .byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}
listBlobsFlat(ContainerListBlobsOptions)

Vrátí asynchronní iterátor, který vypíše všechny objekty blob v rámci zadaného účtu.

.byPage() vrátí asynchronní iterátor pro výpis objektů blob na stránkách.

Příklad s využitím for await syntaxe:

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Příklad použití iter.next():

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Příklad použití byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

Příklad použití stránkování se značkou:

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Nastaví oprávnění pro zadaný kontejner. Oprávnění označují, jestli je možné k objektům blob v kontejneru přistupovat veřejně.

Když nastavíte oprávnění pro kontejner, stávající oprávnění se nahradí. Pokud není k dispozici žádný přístupový seznam nebo seznam containerACL, stávající seznam ACL kontejneru se odebere.

Když vytvoříte uložené zásady přístupu pro kontejner, může trvat až 30 sekund, než se projeví. Během tohoto intervalu selže sdílený přístupový podpis přidružený k uloženým zásadám přístupu se stavovým kódem 403 (Zakázáno), dokud zásady přístupu nebudou aktivní.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl.

setMetadata(Metadata, ContainerSetMetadataOptions)

Nastaví jednu nebo více uživatelsky definovaných dvojic název-hodnota pro zadaný kontejner.

Pokud není k dispozici žádná možnost nebo nejsou v parametru definována žádná metadata, metadata kontejneru se odeberou.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata.

uploadBlockBlob(string, RequestBodyType, number, BlockBlobUploadOptions)

Vytvoří nový objekt blob bloku nebo aktualizuje obsah existujícího objektu blob bloku.

Aktualizace existujícího objektu blob bloku přepíše všechna existující metadata objektu blob. Částečné aktualizace nejsou podporovány. obsah existujícího objektu blob se přepíše novým obsahem. Pokud chcete provést částečnou aktualizaci objektů blob bloku, použijte stageBlock a commitBlockList.

Toto je neelní metoda nahrávání. Pro zajištění lepšího výkonu při souběžném nahrávání použijte uploadFile, uploadStream nebo uploadBrowserData .

Viz https://docs.microsoft.com/rest/api/storageservices/put-blob.

Podrobnosti konstruktoru

ContainerClient(string, PipelineLike)

Vytvoří instanci ContainerClient. Tato metoda přijímá adresu URL odkazující na kontejner. Zakódovaný řetězec adresy URL nebude dvakrát uchvácený, pouze speciální znaky v cestě URL budou unikovány. Pokud název objektu blob obsahuje ? nebo %, název objektu blob musí být zakódovaný v adrese URL.

new ContainerClient(url: string, pipeline: PipelineLike)

Parametry

url

string

Řetězec adresy URL odkazující na kontejner Azure Storage, například "https://myaccount.blob.core.windows.net/mycontainer". Sas můžete připojit, pokud používáte AnonymousCredential, například "https://myaccount.blob.core.windows.net/mycontainer?sasString".

pipeline
PipelineLike

Voláním metody newPipeline() vytvořte výchozí kanál nebo zadejte vlastní kanál.

ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Vytvoří instanci ContainerClient. Tato metoda přijímá adresu URL odkazující na kontejner. Zakódovaný řetězec adresy URL nebude dvakrát uchvácený, pouze speciální znaky v cestě URL budou unikovány. Pokud název objektu blob obsahuje ? nebo %, název objektu blob musí být zakódovaný v adrese URL.

new ContainerClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

Parametry

url

string

Řetězec adresy URL odkazující na kontejner Azure Storage, například "https://myaccount.blob.core.windows.net/mycontainer". Sas můžete připojit, pokud používáte AnonymousCredential, například "https://myaccount.blob.core.windows.net/mycontainer?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Například AnonymousCredential, StorageSharedKeyCredential nebo jakékoli přihlašovací údaje z @azure/identity balíčku k ověřování požadavků na službu. Můžete také zadat objekt, který implementuje rozhraní TokenCredential. Pokud není zadáno, použije se AnonymníCredential.

options
StoragePipelineOptions

Nepovinný parametr. Možnosti konfigurace kanálu HTTP

ContainerClient(string, string, StoragePipelineOptions)

Vytvoří instanci ContainerClient.

new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)

Parametry

connectionString

string

Připojovací řetězec účtu nebo připojovací řetězec SAS účtu úložiště Azure. [ Poznámka – Připojovací řetězec účtu se dá použít jenom v modulu runtime NODE.JS. ] Příklad připojovacího řetězce účtu –DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Příklad připojovacího řetězce SAS – BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

containerName

string

Název kontejneru.

options
StoragePipelineOptions

Nepovinný parametr. Možnosti konfigurace kanálu HTTP

Podrobnosti vlastnosti

containerName

Název kontejneru.

string containerName

Hodnota vlastnosti

string

Podrobnosti zděděných vlastností

accountName

accountName: string

Hodnota vlastnosti

string

Zděděno z StorageClient.accountName

credential

Například AnonymousCredential, StorageSharedKeyCredential nebo jakékoli přihlašovací údaje z @azure/identity balíčku k ověřování požadavků na službu. Můžete také zadat objekt, který implementuje rozhraní TokenCredential. Pokud není zadáno, použije se AnonymníCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Hodnota vlastnosti

Zděděno z StorageClient.credential

url

Zakódovaná hodnota řetězce adresy URL.

url: string

Hodnota vlastnosti

string

Zděděno z StorageClient.url

Podrobnosti metody

create(ContainerCreateOptions)

Vytvoří nový kontejner pod zadaným účtem. Pokud kontejner se stejným názvem již existuje, operace selže.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Pravidla pojmenování: Viz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function create(options?: ContainerCreateOptions): Promise<ContainerCreateResponse>

Parametry

options
ContainerCreateOptions

Možnosti operace vytvoření kontejneru

Příklad použití:

const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);

Návraty

createIfNotExists(ContainerCreateOptions)

Vytvoří nový kontejner pod zadaným účtem. Pokud kontejner se stejným názvem již existuje, nezmění se.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/create-container Pravidla pojmenování: Viz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

function createIfNotExists(options?: ContainerCreateOptions): Promise<ContainerCreateIfNotExistsResponse>

Parametry

Návraty

delete(ContainerDeleteMethodOptions)

Označí zadaný kontejner pro odstranění. Kontejner a všechny objekty blob v něm obsažené se později odstraní během uvolňování paměti.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container.

function delete(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>

Parametry

options
ContainerDeleteMethodOptions

Možnosti operace odstranění kontejneru

Návraty

deleteBlob(string, ContainerDeleteBlobOptions)

Označí zadaný objekt blob nebo snímek pro odstranění. Objekt blob se později odstraní během uvolňování paměti. Upozorňujeme, že pokud chcete odstranit objekt blob, musíte odstranit všechny jeho snímky. Obojí můžete odstranit současně pomocí operace Odstranění objektu blob.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob.

function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions): Promise<BlobDeleteResponse>

Parametry

blobName

string

options
ContainerDeleteBlobOptions

Možnosti operace odstranění objektů blob

Návraty

Data odpovědi na odstranění objektu blob bloku.

deleteIfExists(ContainerDeleteMethodOptions)

Označí zadaný kontejner pro odstranění, pokud existuje. Kontejner a všechny objekty blob v něm obsažené se později odstraní během uvolňování paměti.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container.

function deleteIfExists(options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteIfExistsResponse>

Parametry

options
ContainerDeleteMethodOptions

Možnosti operace odstranění kontejneru

Návraty

exists(ContainerExistsOptions)

Vrátí hodnotu true, pokud existuje prostředek kontejneru Azure reprezentovaný tímto klientem. v opačném případě false.

POZNÁMKA: Tuto funkci používejte opatrně, protože existující kontejner může být odstraněn jinými klienty nebo aplikacemi. Naopak nové kontejnery se stejným názvem můžou po dokončení této funkce přidat jiní klienti nebo aplikace.

function exists(options?: ContainerExistsOptions): Promise<boolean>

Parametry

Návraty

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Vrátí asynchronní iterátor pro vyhledání všech objektů blob se zadanou značkou v zadaném kontejneru.

.byPage() vrátí asynchronní iterovatelný iterátor pro výpis objektů blob na stránkách.

Příklad použití for await syntaxe:

let i = 1;
for await (const blob of containerClient.findBlobsByTags("tagkey='tagvalue'")) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Příklad použití iter.next():

let i = 1;
const iter = containerClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Příklad použití byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
  if (response.blobs) {
    for (const blob of response.blobs) {
      console.log(`Blob ${i++}: ${blob.name}`);
    }
  }
}

Příklad použití stránkování se značkou:

let i = 1;
let iterator = containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
if (response.blobs) {
  for (const blob of response.blobs) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = containerClient
  .findBlobsByTags("tagkey='tagvalue'")
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints blob names
if (response.blobs) {
  for (const blob of response.blobs) {
     console.log(`Blob ${i++}: ${blob.name}`);
  }
}
function findBlobsByTags(tagFilterSqlExpression: string, options?: ContainerFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ContainerFindBlobsByTagsSegmentResponse, PageSettings>

Parametry

tagFilterSqlExpression

string

Parametr where umožňuje volajícímu dotazovat se na objekty blob, jejichž značky odpovídají danému výrazu. Aby se objekt blob vrátil ve výsledcích, musí být daný výraz vyhodnocen jako true. Pravidlo syntaxe filtru [OData – ABNF] definuje formální gramatiku pro hodnotu parametru dotazu where; Ve službě Blob Je však podporována pouze podmnožina syntaxe filtru OData.

options
ContainerFindBlobByTagsOptions

Možnosti hledání objektů blob podle značek

Návraty

generateSasUrl(ContainerGenerateSasUrlOptions)

K dispozici pouze pro ContainerClient vytvořený s přihlašovacími údaji sdíleného klíče.

Vygeneruje identifikátor URI sdíleného přístupového podpisu (SAS) služby Blob Container Service na základě předaných vlastností a parametrů klienta. Sas je podepsaný přihlašovacími údaji sdíleného klíče klienta.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas.

function generateSasUrl(options: ContainerGenerateSasUrlOptions): Promise<string>

Parametry

options
ContainerGenerateSasUrlOptions

Volitelné parametry.

Návraty

Promise<string>

Identifikátor URI SAS sestávající z identifikátoru URI prostředku reprezentovaného tímto klientem a následně z vygenerovaného tokenu SAS.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Získá oprávnění pro zadaný kontejner. Oprávnění označují, jestli je možné veřejně přistupovat k datům kontejneru.

UPOZORNĚNÍ: JavaScript Date potenciálně ztratí přesnost při parsování startsOn a expiresOn řetězců. Například nový Date("2018-12-31T03:44:23.8827891Z").toISOString() získá "2018-12-31T03:44:23.882Z".

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl.

function getAccessPolicy(options?: ContainerGetAccessPolicyOptions): Promise<ContainerGetAccessPolicyResponse>

Parametry

options
ContainerGetAccessPolicyOptions

Možnosti operace Získání zásad přístupu kontejneru

Návraty

getAppendBlobClient(string)

Vytvoří AppendBlobClient.

function getAppendBlobClient(blobName: string): AppendBlobClient

Parametry

blobName

string

Název doplňovací objektu blob

Návraty

getBlobBatchClient()

Vytvoří objekt BlobBatchClient pro provádění dávkových operací.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch.

function getBlobBatchClient(): BlobBatchClient

Návraty

Nový objekt BlobBatchClient pro tento kontejner.

getBlobClient(string)

Vytvoří objekt BlobClient.

function getBlobClient(blobName: string): BlobClient

Parametry

blobName

string

Název objektu blob

Návraty

Nový objekt BlobClient pro daný název objektu blob.

getBlobLeaseClient(string)

Získejte objekt BlobLeaseClient , který spravuje zapůjčení kontejneru.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Parametry

proposeLeaseId

string

Počáteční navrhované ID zapůjčení

Návraty

Nový objekt BlobLeaseClient pro správu zapůjčení kontejneru.

getBlockBlobClient(string)

Vytvoří BlockBlobClient.

function getBlockBlobClient(blobName: string): BlockBlobClient

Parametry

blobName

string

Název objektu blob bloku

Příklad použití:

const content = "Hello world!";

const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);

Návraty

getPageBlobClient(string)

Vytvoří PageBlobClient.

function getPageBlobClient(blobName: string): PageBlobClient

Parametry

blobName

string

Název objektu blob stránky

Návraty

getProperties(ContainerGetPropertiesOptions)

Vrátí všechna uživatelem definovaná metadata a systémové vlastnosti pro zadaný kontejner. Vrácená data nezahrnují seznam objektů blob kontejneru.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties.

UPOZORNĚNÍ: Objekt metadata vrácený v odpovědi bude mít své klíče malými písmeny, i když původně obsahovaly velká písmena. To se liší od klíčů metadat vrácených metodou listContainersBlobServiceClient pomocí includeMetadata možnosti, která si zachová jejich původní velikost písmen.

function getProperties(options?: ContainerGetPropertiesOptions): Promise<ContainerGetPropertiesResponse>

Parametry

options
ContainerGetPropertiesOptions

Možnosti operace Získání vlastností kontejneru

Návraty

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Vrátí asynchronní iterátor pro výpis všech objektů blob podle hierarchie. pod zadaným účtem.

.byPage() vrátí asynchronní iterátor pro výpis objektů blob podle hierarchie na stránkách.

Příklad použití for await syntaxe:

for await (const item of containerClient.listBlobsByHierarchy("/")) {
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
}

Příklad použití iter.next():

let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
  let item = entity.value;
  if (item.kind === "prefix") {
    console.log(`\tBlobPrefix: ${item.name}`);
  } else {
    console.log(`\tBlobItem: name - ${item.name}`);
  }
  entity = await iter.next();
}

Příklad použití byPage():

console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
  const segment = response.segment;
  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }
  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}

Příklad použití stránkování s maximální velikostí stránky:

console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");

let i = 1;
for await (const response of containerClient
  .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
  .byPage({ maxPageSize: 2 })) {
  console.log(`Page ${i++}`);
  const segment = response.segment;

  if (segment.blobPrefixes) {
    for (const prefix of segment.blobPrefixes) {
      console.log(`\tBlobPrefix: ${prefix.name}`);
    }
  }

  for (const blob of response.segment.blobItems) {
    console.log(`\tBlobItem: name - ${blob.name}`);
  }
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions): PagedAsyncIterableIterator<({ kind: "prefix" } & BlobPrefix) | ({ kind: "blob" } & BlobItem), ContainerListBlobHierarchySegmentResponse, PageSettings>

Parametry

delimiter

string

Znak nebo řetězec použitý k definování virtuální hierarchie

options
ContainerListBlobsOptions

Možnosti operace výpisu objektů blob

Návraty

listBlobsFlat(ContainerListBlobsOptions)

Vrátí asynchronní iterátor, který vypíše všechny objekty blob v rámci zadaného účtu.

.byPage() vrátí asynchronní iterátor pro výpis objektů blob na stránkách.

Příklad s využitím for await syntaxe:

// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

Příklad použití iter.next():

let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
  console.log(`Blob ${i++}: ${blobItem.value.name}`);
  blobItem = await iter.next();
}

Příklad použití byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
  for (const blob of response.segment.blobItems) {
    console.log(`Blob ${i++}: ${blob.name}`);
  }
}

Příklad použití stránkování se značkou:

let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 blob names
for (const blob of response.segment.blobItems) {
  console.log(`Blob ${i++}: ${blob.name}`);
}
function listBlobsFlat(options?: ContainerListBlobsOptions): PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse, PageSettings>

Parametry

options
ContainerListBlobsOptions

Možnosti výpisu objektů blob

Návraty

AsyncIterableIterator, který podporuje stránkování.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Nastaví oprávnění pro zadaný kontejner. Oprávnění označují, jestli je možné k objektům blob v kontejneru přistupovat veřejně.

Když nastavíte oprávnění pro kontejner, stávající oprávnění se nahradí. Pokud není k dispozici žádný přístupový seznam nebo seznam containerACL, stávající seznam ACL kontejneru se odebere.

Když vytvoříte uložené zásady přístupu pro kontejner, může trvat až 30 sekund, než se projeví. Během tohoto intervalu selže sdílený přístupový podpis přidružený k uloženým zásadám přístupu se stavovým kódem 403 (Zakázáno), dokud zásady přístupu nebudou aktivní.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl.

function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions): Promise<ContainerSetAccessPolicyResponse>

Parametry

access
PublicAccessType

Úroveň veřejného přístupu k datům v kontejneru.

containerAcl

SignedIdentifier[]

Pole prvků, z nichž každý má jedinečné ID a podrobnosti o zásadách přístupu.

options
ContainerSetAccessPolicyOptions

Možnosti operace Nastavení zásad přístupu kontejneru

Návraty

setMetadata(Metadata, ContainerSetMetadataOptions)

Nastaví jednu nebo více uživatelsky definovaných dvojic název-hodnota pro zadaný kontejner.

Pokud není k dispozici žádná možnost nebo nejsou v parametru definována žádná metadata, metadata kontejneru se odeberou.

Viz https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata.

function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions): Promise<ContainerSetMetadataResponse>

Parametry

metadata
Metadata

Nahraďte existující metadata touto hodnotou. Pokud se nezadá žádná hodnota, existující metadata se odeberou.

options
ContainerSetMetadataOptions

Možnosti operace nastavení metadat kontejneru

Návraty

uploadBlockBlob(string, RequestBodyType, number, BlockBlobUploadOptions)

Vytvoří nový objekt blob bloku nebo aktualizuje obsah existujícího objektu blob bloku.

Aktualizace existujícího objektu blob bloku přepíše všechna existující metadata objektu blob. Částečné aktualizace nejsou podporovány. obsah existujícího objektu blob se přepíše novým obsahem. Pokud chcete provést částečnou aktualizaci objektů blob bloku, použijte stageBlock a commitBlockList.

Toto je neelní metoda nahrávání. Pro zajištění lepšího výkonu při souběžném nahrávání použijte uploadFile, uploadStream nebo uploadBrowserData .

Viz https://docs.microsoft.com/rest/api/storageservices/put-blob.

function uploadBlockBlob(blobName: string, body: RequestBodyType, contentLength: number, options?: BlockBlobUploadOptions): Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

Parametry

blobName

string

Název objektu blob bloku, který se má vytvořit nebo aktualizovat.

body
HttpRequestBody

Objekt blob, řetězec, ArrayBuffer, ArrayBufferView nebo funkce, která vrací nový čitelný datový proud, jehož posun je od začátku zdroje dat.

contentLength

number

Délka těla v bajtech. Pomocí buffer.byteLength() můžete vypočítat délku textu řetězce, včetně znaků bez kódování Base64/Hex.

options
BlockBlobUploadOptions

Možnosti konfigurace operace nahrávání objektů blob bloku

Návraty

Promise<{ blockBlobClient: BlockBlobClient, response: BlockBlobUploadResponse }>

Data odpovědi nahrání objektu blob bloku a odpovídající instance BlockBlobClient