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

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

accountName
containerName

Nazwa kontenera.

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.

createIfNotExists(ContainerCreateOptions)

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

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.

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.

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.

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.

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.

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".

getAppendBlobClient(string)

Tworzy <xref:AppendBlobClient>

getBlobBatchClient()

Tworzy obiekt BlobBatchClient do przeprowadzania operacji wsadowych.

getBlobClient(string)

Tworzy <xref:BlobClient>

getBlobLeaseClient(string)

Uzyskaj <xref:BlobLeaseClient>, który zarządza dzierżawami w kontenerze.

getBlockBlobClient(string)

Tworzy <xref:BlockBlobClient>

getPageBlobClient(string)

Tworzy <xref: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.

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}, last modified - ${item.properties.lastModified}`);
  }
}

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}, last modified - ${item.properties.lastModified}`);
  }
  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}, last modified - ${blob.properties.lastModified}`);
  }
}

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}, last modified - ${blob.properties.lastModified}`);
  }
}
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.

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.

uploadBlockBlob(string, HttpRequestBody, 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 <xref:BlockBlobClient.stageBlock> i <xref:BlockBlobClient.commitBlockList>.

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

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

accountName

accountName: string

Wartość właściwości

string

containerName

Nazwa kontenera.

string containerName

Wartość właściwości

string

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

url

Wartość zakodowanego ciągu adresu URL.

url: string

Wartość właściwości

string

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.

function create(options?: ContainerCreateOptions)

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.

function createIfNotExists(options?: ContainerCreateOptions)

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.

function delete(options?: ContainerDeleteMethodOptions)

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.

function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)

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.

function deleteIfExists(options?: ContainerDeleteMethodOptions)

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)

Parametry

Zwraca

Promise<boolean>

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.

function generateSasUrl(options: ContainerGenerateSasUrlOptions)

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".

function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)

Parametry

options
ContainerGetAccessPolicyOptions

Opcje operacji Uzyskiwanie zasad dostępu do kontenera.

Zwraca

getAppendBlobClient(string)

Tworzy <xref:AppendBlobClient>

function getAppendBlobClient(blobName: string)

Parametry

blobName

string

Nazwa uzupełnialnych obiektów blob

Zwraca

getBlobBatchClient()

Tworzy obiekt BlobBatchClient do przeprowadzania operacji wsadowych.

function getBlobBatchClient()

Zwraca

Nowy obiekt BlobBatchClient dla tego kontenera.

getBlobClient(string)

Tworzy <xref:BlobClient>

function getBlobClient(blobName: string)

Parametry

blobName

string

Nazwa obiektu blob

Zwraca

Nowy obiekt BlobClient dla podanej nazwy obiektu blob.

getBlobLeaseClient(string)

Uzyskaj <xref:BlobLeaseClient>, który zarządza dzierżawami w kontenerze.

function getBlobLeaseClient(proposeLeaseId?: string)

Parametry

proposeLeaseId

string

Początkowy proponowany identyfikator dzierżawy.

Zwraca

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

getBlockBlobClient(string)

Tworzy <xref:BlockBlobClient>

function getBlockBlobClient(blobName: string)

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 <xref:PageBlobClient>

function getPageBlobClient(blobName: string)

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.

function getProperties(options?: ContainerGetPropertiesOptions)

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}, last modified - ${item.properties.lastModified}`);
  }
}

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}, last modified - ${item.properties.lastModified}`);
  }
  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}, last modified - ${blob.properties.lastModified}`);
  }
}

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}, last modified - ${blob.properties.lastModified}`);
  }
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions)

Parametry

delimiter

string

Znak lub ciąg używany do definiowania hierarchii wirtualnej

options
ContainerListBlobsOptions

Opcje wyświetlania listy operacji obiektów blob.

Zwraca

PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>

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)

Parametry

options
ContainerListBlobsOptions

Opcje wyświetlania listy obiektów blob.

Zwraca

PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>

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.

function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)

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.

function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)

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, HttpRequestBody, 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 <xref:BlockBlobClient.stageBlock> i <xref:BlockBlobClient.commitBlockList>.

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

function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)

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<Object>

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