Udostępnij za pośrednictwem


ContainerClient class

KontenerClient reprezentuje adres URL kontenera usługi Azure Storage, który umożliwia manipulowanie jego obiektami blob.

Rozszerzenie

StorageClient

Konstruktory

ContainerClient(string, PipelineLike)

Tworzy wystąpienie klasy ContainerClient. Ta metoda akceptuje adres URL wskazujący kontener. Zakodowany ciąg adresu URL nie zostanie dwukrotnie uniknięci. Tylko znaki specjalne w ścieżce adresu URL zostaną uniknięci. Jeśli nazwa obiektu blob zawiera wartość ? lub %nazwa obiektu blob musi być zakodowana w adresie URL.

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

Tworzy wystąpienie klasy ContainerClient. Ta metoda akceptuje adres URL wskazujący kontener. Zakodowany ciąg adresu URL nie zostanie dwukrotnie uniknięci. Tylko znaki specjalne w ścieżce adresu URL zostaną uniknięci. Jeśli nazwa obiektu blob zawiera wartość ? lub %nazwa obiektu blob musi być zakodowana w adresie URL.

ContainerClient(string, string, StoragePipelineOptions)

Tworzy wystąpienie klasy ContainerClient.

Właściwości

containerName

Nazwa kontenera.

Właściwości dziedziczone

accountName
credential

Takie jak AnonymousCredential, StorageSharedKeyCredential lub dowolne poświadczenia z pakietu @azure/identity do uwierzytelniania żądań do usługi. Można również podać obiekt, który implementuje interfejs TokenCredential. Jeśli nie zostanie określony, zostanie użyty parametr AnonymousCredential.

url

Wartość zakodowanego ciągu adresu URL.

Metody

create(ContainerCreateOptions)

Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem.

Zobacz reguły nazewnictwa https://docs.microsoft.com/en-us/rest/api/storageservices/create-container: Zobacz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

createIfNotExists(ContainerCreateOptions)

Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, nie zostanie zmieniony.

Zobacz reguły nazewnictwa https://docs.microsoft.com/en-us/rest/api/storageservices/create-container: Zobacz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

delete(ContainerDeleteMethodOptions)

Oznacza określony kontener do usunięcia. Kontener i wszystkie zawarte w nim obiekty blob zostaną później usunięte podczas odzyskiwania pamięci.

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

deleteBlob(string, ContainerDeleteBlobOptions)

Oznacza określony obiekt blob lub migawkę do usunięcia. Obiekt blob zostanie później usunięty podczas odzyskiwania pamięci. Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba te elementy można usunąć jednocześnie za pomocą operacji Usuń obiekt blob.

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

deleteIfExists(ContainerDeleteMethodOptions)

Oznacza określony kontener do usunięcia, jeśli istnieje. Kontener i wszystkie zawarte w nim obiekty blob zostaną później usunięte podczas odzyskiwania pamięci.

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

exists(ContainerExistsOptions)

Zwraca wartość true, jeśli istnieje zasób kontenera platformy Azure reprezentowany przez tego klienta; w przeciwnym razie wartość false.

UWAGA: użyj tej funkcji z ostrożnością, ponieważ istniejący kontener może zostać usunięty przez innych klientów lub aplikacje. Na odwrót nowe kontenery o tej samej nazwie mogą zostać dodane przez innych klientów lub aplikacje po zakończeniu tej funkcji.

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Zwraca iterator asynchroniczny, aby znaleźć wszystkie obiekty blob z określonym tagiem w określonym kontenerze.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob na stronach.

Przykład użycia składni for await:

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

Przykład użycia 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();
}

Przykład użycia 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}`);
    }
  }
}

Przykład użycia stronicowania ze znacznikiem:

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)

Jest dostępny tylko dla elementu ContainerClient skonstruowanego przy użyciu poświadczeń klucza współużytkowanego.

Generuje identyfikator URI sygnatury dostępu współdzielonego usługi kontenera obiektów blob na podstawie przekazanych właściwości i parametrów klienta. Sygnatura dostępu współdzielonego jest podpisana przez poświadczenia klucza wspólnego klienta.

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

getAccessPolicy(ContainerGetAccessPolicyOptions)

Pobiera uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy dane kontenera mogą być dostępne publicznie.

OSTRZEŻENIE: Data języka JavaScript potencjalnie utraci precyzję podczas analizowania wartości startOn i wygasa w ciągach. Na przykład nowa data("2018-12-31T03:44:23.8827891Z").toISOString() otrzyma wartość "2018-12-31T03:44:23.882Z".

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

getAccountInfo(ContainerGetAccountInfoOptions)

Operacja Pobierz informacje o koncie zwraca nazwę jednostki SKU i rodzaj konta dla określonego konta. Operacja Uzyskiwanie informacji o koncie jest dostępna w wersjach usługi, począwszy od wersji 2018-03-28.

Zobacz https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

getAppendBlobClient(string)

Tworzy AppendBlobClient

getBlobBatchClient()

Tworzy obiekt BlobBatchClient do przeprowadzania operacji wsadowych.

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

getBlobClient(string)

Tworzy BlobClient

getBlobLeaseClient(string)

Pobierz BlobLeaseClient, który zarządza dzierżawami w kontenerze.

getBlockBlobClient(string)

Tworzy BlockBlobClient

getPageBlobClient(string)

Tworzy PageBlobClient

getProperties(ContainerGetPropertiesOptions)

Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego kontenera. Zwrócone dane nie zawierają listy obiektów blob kontenera.

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

OSTRZEŻENIE: Obiekt metadata zwrócony w odpowiedzi będzie miał klucze w małych literach, nawet jeśli pierwotnie zawierał wielkie litery. Różni się to od kluczy metadanych zwracanych przez metodę listContainersBlobServiceClient przy użyciu opcji includeMetadata, która zachowa oryginalną wielkość liter.

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Zwraca iterator asynchroniczny, aby wyświetlić listę wszystkich obiektów blob według hierarchii. w ramach określonego konta.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob według hierarchii na stronach.

Przykład użycia składni for await:

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

Przykład użycia 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();
}

Przykład użycia 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}`);
  }
}

Przykład użycia stronicowania z maksymalnym rozmiarem strony:

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)

Zwraca iterator asynchroniczny, aby wyświetlić listę wszystkich obiektów blob w ramach określonego konta.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob na stronach.

Przykład użycia składni for await:

// 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}`);
}

Przykład użycia 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();
}

Przykład użycia 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}`);
  }
}

Przykład użycia stronicowania ze znacznikiem:

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)

Ustawia uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy obiekty blob w kontenerze mogą być dostępne publicznie.

Po ustawieniu uprawnień dla kontenera istniejące uprawnienia zostaną zastąpione. Jeśli nie podano dostępu lub kontenerAcl, istniejąca lista ACL kontenera zostanie usunięta.

Po ustanowieniu przechowywanych zasad dostępu w kontenerze może upłynąć do 30 sekund. W tym interwale sygnatura dostępu współdzielonego skojarzona z zapisanymi zasadami dostępu zakończy się niepowodzeniem z kodem stanu 403 (Zabronione), dopóki zasady dostępu nie staną się aktywne.

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

setMetadata(Metadata, ContainerSetMetadataOptions)

Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego kontenera.

Jeśli nie podano żadnej opcji lub żadne metadane zdefiniowane w parametrze, metadane kontenera zostaną usunięte.

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

uploadBlockBlob(string, RequestBodyType, number, BlockBlobUploadOptions)

Tworzy nowy blokowy obiekt blob lub aktualizuje zawartość istniejącego blokowego obiektu blob.

Aktualizowanie istniejącego obiektu blob blokowego zastępuje wszystkie istniejące metadane obiektu blob. Aktualizacje częściowe nie są obsługiwane; zawartość istniejącego obiektu blob jest zastępowana nową zawartością. Aby wykonać częściową aktualizację blokowych obiektów blob, użyj stageBlock i commitBlockList.

Jest to metoda przekazywania niezrównanego. Użyj uploadFile, uploadStream lub uploadBrowserData, aby uzyskać lepszą wydajność z przekazywaniem współbieżności.

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

Szczegóły konstruktora

ContainerClient(string, PipelineLike)

Tworzy wystąpienie klasy ContainerClient. Ta metoda akceptuje adres URL wskazujący kontener. Zakodowany ciąg adresu URL nie zostanie dwukrotnie uniknięci. Tylko znaki specjalne w ścieżce adresu URL zostaną uniknięci. Jeśli nazwa obiektu blob zawiera wartość ? lub %nazwa obiektu blob musi być zakodowana w adresie URL.

new ContainerClient(url: string, pipeline: PipelineLike)

Parametry

url

string

Ciąg adresu URL wskazujący kontener usługi Azure Storage, taki jak "https://myaccount.blob.core.windows.net/mycontainer". Sygnaturę dostępu współdzielonego można dołączyć, jeśli jest używana funkcja AnonymousCredential, na przykład "https://myaccount.blob.core.windows.net/mycontainer?sasString".

pipeline
PipelineLike

Wywołaj metodę newPipeline(), aby utworzyć domyślny potok lub podaj dostosowany potok.

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

Tworzy wystąpienie klasy ContainerClient. Ta metoda akceptuje adres URL wskazujący kontener. Zakodowany ciąg adresu URL nie zostanie dwukrotnie uniknięci. Tylko znaki specjalne w ścieżce adresu URL zostaną uniknięci. Jeśli nazwa obiektu blob zawiera wartość ? lub %nazwa obiektu blob musi być zakodowana w adresie URL.

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

Parametry

url

string

Ciąg adresu URL wskazujący kontener usługi Azure Storage, taki jak "https://myaccount.blob.core.windows.net/mycontainer". Sygnaturę dostępu współdzielonego można dołączyć, jeśli jest używana funkcja AnonymousCredential, na przykład "https://myaccount.blob.core.windows.net/mycontainer?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Takie jak AnonymousCredential, StorageSharedKeyCredential lub dowolne poświadczenia z pakietu @azure/identity do uwierzytelniania żądań do usługi. Można również podać obiekt, który implementuje interfejs TokenCredential. Jeśli nie zostanie określony, zostanie użyty parametr AnonymousCredential.

options
StoragePipelineOptions

Fakultatywny. Opcje konfigurowania potoku HTTP.

ContainerClient(string, string, StoragePipelineOptions)

Tworzy wystąpienie klasy ContainerClient.

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

Parametry

connectionString

string

Parametry połączenia konta lub parametry połączenia sygnatury dostępu współdzielonego konta usługi Azure Storage. [ Uwaga — parametry połączenia konta mogą być używane tylko w środowisku uruchomieniowym NODE.JS. ] Przykład parametrów połączenia konta — przykład parametrów połączenia sygnatury dostępu współdzielonego DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.netBlobEndpoint=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

Nazwa kontenera.

options
StoragePipelineOptions

Fakultatywny. Opcje konfigurowania potoku HTTP.

Szczegóły właściwości

containerName

Nazwa kontenera.

string containerName

Wartość właściwości

string

Szczegóły właściwości dziedziczonej

accountName

accountName: string

Wartość właściwości

string

dziedziczone z StorageClient.accountName

credential

Takie jak AnonymousCredential, StorageSharedKeyCredential lub dowolne poświadczenia z pakietu @azure/identity do uwierzytelniania żądań do usługi. Można również podać obiekt, który implementuje interfejs TokenCredential. Jeśli nie zostanie określony, zostanie użyty parametr AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Wartość właściwości

dziedziczone z StorageClient.credential

url

Wartość zakodowanego ciągu adresu URL.

url: string

Wartość właściwości

string

dziedziczone z StorageClient.url

Szczegóły metody

create(ContainerCreateOptions)

Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem.

Zobacz reguły nazewnictwa https://docs.microsoft.com/en-us/rest/api/storageservices/create-container: Zobacz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

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

Parametry

options
ContainerCreateOptions

Opcje operacji tworzenia kontenera.

Przykładowe użycie:

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

Zwraca

createIfNotExists(ContainerCreateOptions)

Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, nie zostanie zmieniony.

Zobacz reguły nazewnictwa https://docs.microsoft.com/en-us/rest/api/storageservices/create-container: Zobacz https://learn.microsoft.com/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata

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

Parametry

Zwraca

delete(ContainerDeleteMethodOptions)

Oznacza określony kontener do usunięcia. Kontener i wszystkie zawarte w nim obiekty blob zostaną później usunięte podczas odzyskiwania pamięci.

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

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

Parametry

options
ContainerDeleteMethodOptions

Opcje operacji usuwania kontenera.

Zwraca

deleteBlob(string, ContainerDeleteBlobOptions)

Oznacza określony obiekt blob lub migawkę do usunięcia. Obiekt blob zostanie później usunięty podczas odzyskiwania pamięci. Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba te elementy można usunąć jednocześnie za pomocą operacji Usuń obiekt blob.

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

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

Parametry

blobName

string

options
ContainerDeleteBlobOptions

Opcje operacji usuwania obiektu blob.

Zwraca

Blokuj dane odpowiedzi usuwania obiektów blob.

deleteIfExists(ContainerDeleteMethodOptions)

Oznacza określony kontener do usunięcia, jeśli istnieje. Kontener i wszystkie zawarte w nim obiekty blob zostaną później usunięte podczas odzyskiwania pamięci.

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

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

Parametry

options
ContainerDeleteMethodOptions

Opcje operacji usuwania kontenera.

Zwraca

exists(ContainerExistsOptions)

Zwraca wartość true, jeśli istnieje zasób kontenera platformy Azure reprezentowany przez tego klienta; w przeciwnym razie wartość false.

UWAGA: użyj tej funkcji z ostrożnością, ponieważ istniejący kontener może zostać usunięty przez innych klientów lub aplikacje. Na odwrót nowe kontenery o tej samej nazwie mogą zostać dodane przez innych klientów lub aplikacje po zakończeniu tej funkcji.

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

Parametry

Zwraca

Promise<boolean>

findBlobsByTags(string, ContainerFindBlobByTagsOptions)

Zwraca iterator asynchroniczny, aby znaleźć wszystkie obiekty blob z określonym tagiem w określonym kontenerze.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob na stronach.

Przykład użycia składni for await:

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

Przykład użycia 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();
}

Przykład użycia 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}`);
    }
  }
}

Przykład użycia stronicowania ze znacznikiem:

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żliwia obiektowi wywołującym wykonywanie zapytań o obiekty blob, których tagi pasują do danego wyrażenia. Podane wyrażenie musi mieć wartość true, aby obiekt blob był zwracany w wynikach. Reguła składni filtru[OData - ABNF] definiuje formalną gramatykę dla wartości parametru where query; jednak tylko podzbiór składni filtru OData jest obsługiwany w usłudze Blob Service.

options
ContainerFindBlobByTagsOptions

Opcje znajdowania obiektów blob według tagów.

Zwraca

generateSasUrl(ContainerGenerateSasUrlOptions)

Jest dostępny tylko dla elementu ContainerClient skonstruowanego przy użyciu poświadczeń klucza współużytkowanego.

Generuje identyfikator URI sygnatury dostępu współdzielonego usługi kontenera obiektów blob na podstawie przekazanych właściwości i parametrów klienta. Sygnatura dostępu współdzielonego jest podpisana przez poświadczenia klucza wspólnego klienta.

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

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

Parametry

options
ContainerGenerateSasUrlOptions

Parametry opcjonalne.

Zwraca

Promise<string>

Identyfikator URI sygnatury dostępu współdzielonego składający się z identyfikatora URI do zasobu reprezentowanego przez tego klienta, a następnie wygenerowany token SAS.

getAccessPolicy(ContainerGetAccessPolicyOptions)

Pobiera uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy dane kontenera mogą być dostępne publicznie.

OSTRZEŻENIE: Data języka JavaScript potencjalnie utraci precyzję podczas analizowania wartości startOn i wygasa w ciągach. Na przykład nowa data("2018-12-31T03:44:23.8827891Z").toISOString() otrzyma wartość "2018-12-31T03:44:23.882Z".

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

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

Parametry

options
ContainerGetAccessPolicyOptions

Opcje operacji Uzyskiwanie zasad dostępu do kontenera.

Zwraca

getAccountInfo(ContainerGetAccountInfoOptions)

Operacja Pobierz informacje o koncie zwraca nazwę jednostki SKU i rodzaj konta dla określonego konta. Operacja Uzyskiwanie informacji o koncie jest dostępna w wersjach usługi, począwszy od wersji 2018-03-28.

Zobacz https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information

function getAccountInfo(options?: ContainerGetAccountInfoOptions): Promise<ContainerGetAccountInfoResponse>

Parametry

options
ContainerGetAccountInfoOptions

Opcje operacji Uzyskiwanie informacji o koncie w usłudze.

Zwraca

Dane odpowiedzi dla operacji Uzyskiwanie informacji o koncie usługi.

getAppendBlobClient(string)

Tworzy AppendBlobClient

function getAppendBlobClient(blobName: string): AppendBlobClient

Parametry

blobName

string

Nazwa uzupełnialnych obiektów blob

Zwraca

getBlobBatchClient()

Tworzy obiekt BlobBatchClient do przeprowadzania operacji wsadowych.

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

function getBlobBatchClient(): BlobBatchClient

Zwraca

Nowy obiekt BlobBatchClient dla tego kontenera.

getBlobClient(string)

Tworzy BlobClient

function getBlobClient(blobName: string): BlobClient

Parametry

blobName

string

Nazwa obiektu blob

Zwraca

Nowy obiekt BlobClient dla podanej nazwy obiektu blob.

getBlobLeaseClient(string)

Pobierz BlobLeaseClient, który zarządza dzierżawami w kontenerze.

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

Parametry

proposeLeaseId

string

Początkowy proponowany identyfikator dzierżawy.

Zwraca

Nowy obiekt BlobLeaseClient do zarządzania dzierżawami w kontenerze.

getBlockBlobClient(string)

Tworzy BlockBlobClient

function getBlockBlobClient(blobName: string): BlockBlobClient

Parametry

blobName

string

Nazwa blokowego obiektu blob

Przykładowe użycie:

const content = "Hello world!";

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

Zwraca

getPageBlobClient(string)

Tworzy PageBlobClient

function getPageBlobClient(blobName: string): PageBlobClient

Parametry

blobName

string

Nazwa stronicowego obiektu blob

Zwraca

getProperties(ContainerGetPropertiesOptions)

Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego kontenera. Zwrócone dane nie zawierają listy obiektów blob kontenera.

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

OSTRZEŻENIE: Obiekt metadata zwrócony w odpowiedzi będzie miał klucze w małych literach, nawet jeśli pierwotnie zawierał wielkie litery. Różni się to od kluczy metadanych zwracanych przez metodę listContainersBlobServiceClient przy użyciu opcji includeMetadata, która zachowa oryginalną wielkość liter.

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

Parametry

options
ContainerGetPropertiesOptions

Opcje operacji Pobieranie właściwości kontenera.

Zwraca

listBlobsByHierarchy(string, ContainerListBlobsOptions)

Zwraca iterator asynchroniczny, aby wyświetlić listę wszystkich obiektów blob według hierarchii. w ramach określonego konta.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob według hierarchii na stronach.

Przykład użycia składni for await:

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

Przykład użycia 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();
}

Przykład użycia 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}`);
  }
}

Przykład użycia stronicowania z maksymalnym rozmiarem strony:

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 lub ciąg używany do definiowania hierarchii wirtualnej

options
ContainerListBlobsOptions

Opcje wyświetlania listy operacji obiektów blob.

Zwraca

listBlobsFlat(ContainerListBlobsOptions)

Zwraca iterator asynchroniczny, aby wyświetlić listę wszystkich obiektów blob w ramach określonego konta.

Funkcja .byPage() zwraca iterator asynchroniczny, aby wyświetlić listę obiektów blob na stronach.

Przykład użycia składni for await:

// 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}`);
}

Przykład użycia 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();
}

Przykład użycia 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}`);
  }
}

Przykład użycia stronicowania ze znacznikiem:

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

Opcje wyświetlania listy obiektów blob.

Zwraca

AsyncIterableIterator, który obsługuje stronicowanie.

setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)

Ustawia uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy obiekty blob w kontenerze mogą być dostępne publicznie.

Po ustawieniu uprawnień dla kontenera istniejące uprawnienia zostaną zastąpione. Jeśli nie podano dostępu lub kontenerAcl, istniejąca lista ACL kontenera zostanie usunięta.

Po ustanowieniu przechowywanych zasad dostępu w kontenerze może upłynąć do 30 sekund. W tym interwale sygnatura dostępu współdzielonego skojarzona z zapisanymi zasadami dostępu zakończy się niepowodzeniem z kodem stanu 403 (Zabronione), dopóki zasady dostępu nie staną się aktywne.

Zobacz 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

Poziom publicznego dostępu do danych w kontenerze.

containerAcl

SignedIdentifier[]

Tablica elementów o unikatowym identyfikatorze i szczegółach zasad dostępu.

options
ContainerSetAccessPolicyOptions

Opcje operacji Ustaw zasady dostępu dla kontenera.

Zwraca

setMetadata(Metadata, ContainerSetMetadataOptions)

Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego kontenera.

Jeśli nie podano żadnej opcji lub żadne metadane zdefiniowane w parametrze, metadane kontenera zostaną usunięte.

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

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

Parametry

metadata
Metadata

Zastąp istniejące metadane tą wartością. Jeśli żadna wartość nie zostanie podana, istniejące metadane zostaną usunięte.

options
ContainerSetMetadataOptions

Opcje operacji ustawiania metadanych w kontenerze.

Zwraca

uploadBlockBlob(string, RequestBodyType, number, BlockBlobUploadOptions)

Tworzy nowy blokowy obiekt blob lub aktualizuje zawartość istniejącego blokowego obiektu blob.

Aktualizowanie istniejącego obiektu blob blokowego zastępuje wszystkie istniejące metadane obiektu blob. Aktualizacje częściowe nie są obsługiwane; zawartość istniejącego obiektu blob jest zastępowana nową zawartością. Aby wykonać częściową aktualizację blokowych obiektów blob, użyj stageBlock i commitBlockList.

Jest to metoda przekazywania niezrównanego. Użyj uploadFile, uploadStream lub uploadBrowserData, aby uzyskać lepszą wydajność z przekazywaniem współbieżności.

Zobacz 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

Nazwa blokowego obiektu blob do utworzenia lub zaktualizowania.

body
HttpRequestBody

Obiekt blob, ciąg, ArrayBuffer, ArrayBufferView lub funkcja zwracająca nowy strumień z możliwością odczytu, którego przesunięcie pochodzi od źródła danych.

contentLength

number

Długość ciała w bajtach. Użyj metody Buffer.byteLength(), aby obliczyć długość treści dla ciągu, w tym niekodowane znaki base64/szesnastkowe.

options
BlockBlobUploadOptions

Opcje konfigurowania operacji przekazywania blokowych obiektów blob.

Zwraca

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

Blokowe dane odpowiedzi przekazywania obiektów blob i odpowiadające mu wystąpienie BlockBlobClient.