ContainerClient class
En ContainerClient representerar en URL till Azure Storage-containern så att du kan ändra dess blobar.
- Extends
Konstruktorer
Container |
Skapar en instans av ContainerClient. Den här metoden accepterar en URL som pekar på en container. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Om ett blobnamn innehåller ? eller %, blobnamnet måste vara kodat i URL:en. |
Container |
Skapar en instans av ContainerClient. Den här metoden accepterar en URL som pekar på en container. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Om ett blobnamn innehåller ? eller %, blobnamnet måste vara kodat i URL:en. |
Container |
Skapar en instans av ContainerClient. |
Egenskaper
account |
|
container |
Namnet på containern. |
credential | Till exempel AnonymousCredential, StorageSharedKeyCredential eller autentiseringsuppgifter från paketet för att autentisera |
url | Kodat URL-strängvärde. |
Metoder
create(Container |
Skapar en ny container under det angivna kontot. Om containern med samma namn redan finns misslyckas åtgärden. |
create |
Skapar en ny container under det angivna kontot. Om containern med samma namn redan finns ändras den inte. |
delete(Container |
Markerar den angivna containern för borttagning. Containern och eventuella blobar som finns i den tas senare bort under skräpinsamlingen. |
delete |
Markerar den angivna bloben eller ögonblicksbilden för borttagning. Bloben tas senare bort under skräpinsamlingen. Observera att du måste ta bort alla ögonblicksbilder för att kunna ta bort en blob. Du kan ta bort båda samtidigt med åtgärden Ta bort blob. |
delete |
Markerar den angivna containern för borttagning om den finns. Containern och eventuella blobar som finns i den tas senare bort under skräpinsamlingen. |
exists(Container |
Returnerar sant om Azure-containerresursen som representeras av den här klienten finns. annars falskt. Obs! Använd den här funktionen med försiktighet eftersom en befintlig container kan tas bort av andra klienter eller program. Tvärtom kan nya containrar med samma namn läggas till av andra klienter eller program när den här funktionen har slutförts. |
generate |
Endast tillgängligt för ContainerClient som skapats med en autentiseringsuppgift med delad nyckel. Genererar en SAS-URI (Blob Container Service Shared Access Signature) baserat på klientegenskaperna och parametrarna som skickas. SAS signeras av klientens autentiseringsuppgifter för delad nyckel. |
get |
Hämtar behörigheterna för den angivna containern. Behörigheterna anger om containerdata kan kommas åt offentligt. VARNING! JavaScript-datum kan förlora precision när startsOn parsas och expiresOn-strängar. Till exempel får nya Date("2018-12-31T03:44:23.8827891Z").toISOString() "2018-12-31T03:44:23.882Z". |
get |
Skapar en <xref:AppendBlobClient> |
get |
Skapar ett BlobBatchClient-objekt för att utföra batchåtgärder. |
get |
Skapar en <xref:BlobClient> |
get |
Hämta en <xref:BlobLeaseClient> som hanterar lån på containern. |
get |
Skapar en <xref:BlockBlobClient> |
get |
Skapar en <xref:PageBlobClient> |
get |
Returnerar alla användardefinierade metadata och systemegenskaper för den angivna containern. De data som returneras innehåller inte containerns lista över blobar. |
list |
Returnerar en asynkron iterbar iterator för att visa en lista över alla blobar efter hierarki. under det angivna kontot. .byPage() returnerar en asynkron itererbar iterator för att visa en lista över blobar efter hierarki på sidor. Exempel med syntax
Exempel med
Exempel med
Exempel med sidindelning med maximal sidstorlek:
|
list |
Returnerar en asynkron iterbar iterator för att visa en lista över alla blobar under det angivna kontot. .byPage() returnerar en iterator som kan itereras asynkront för att visa en lista över blobarna på sidor. Exempel med syntax
Exempel med
Exempel med
Exempel med sidindelning med en markör:
|
set |
Anger behörigheterna för den angivna containern. Behörigheterna anger om blobar i en container kan kommas åt offentligt. När du anger behörigheter för en container ersätts de befintliga behörigheterna. Om ingen åtkomst eller containerAcl har angetts tas den befintliga containerns ACL bort. När du upprättar en lagrad åtkomstprincip på en container kan det ta upp till 30 sekunder innan den börjar gälla. Under det här intervallet misslyckas en signatur för delad åtkomst som är associerad med den lagrade åtkomstprincipen med statuskod 403 (Förbjuden) tills åtkomstprincipen blir aktiv. |
set |
Anger ett eller flera användardefinierade namn/värde-par för den angivna containern. Om inget alternativ har angetts eller inga metadata definierats i parametern tas containermetadata bort. |
upload |
Skapar en ny blockblob eller uppdaterar innehållet i en befintlig blockblob. Om du uppdaterar en befintlig blockblob skrivs befintliga metadata över på bloben. Partiella uppdateringar stöds inte. innehållet i den befintliga bloben skrivs över med det nya innehållet. Om du vill utföra en partiell uppdatering av en blockblob använder du <xref:BlockBlobClient.stageBlock> och <xref:BlockBlobClient.commitBlockList>. Det här är en icke-parallell uppladdningsmetod, använd <xref:BlockBlobClient.uploadFile><xref:BlockBlobClient.uploadStream> eller <xref:BlockBlobClient.uploadBrowserData> för bättre prestanda med samtidighetsuppladdning. |
Konstruktorinformation
ContainerClient(string, PipelineLike)
Skapar en instans av ContainerClient. Den här metoden accepterar en URL som pekar på en container. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Om ett blobnamn innehåller ? eller %, blobnamnet måste vara kodat i URL:en.
new ContainerClient(url: string, pipeline: PipelineLike)
Parametrar
- url
-
string
En URL-sträng som pekar på Azure Storage-containern, till exempel "https://myaccount.blob.core.windows.net/mycontainer". Du kan lägga till en SAS om du använder AnonymousCredential, till exempel "https://myaccount.blob.core.windows.net/mycontainer?sasString".
- pipeline
- PipelineLike
Anropa newPipeline() för att skapa en standardpipeline eller ange en anpassad pipeline.
ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
Skapar en instans av ContainerClient. Den här metoden accepterar en URL som pekar på en container. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Om ett blobnamn innehåller ? eller %, blobnamnet måste vara kodat i URL:en.
new ContainerClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
Parametrar
- url
-
string
En URL-sträng som pekar på Azure Storage-containern, till exempel "https://myaccount.blob.core.windows.net/mycontainer". Du kan lägga till en SAS om du använder AnonymousCredential, till exempel "https://myaccount.blob.core.windows.net/mycontainer?sasString".
- credential
-
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Till exempel AnonymousCredential, StorageSharedKeyCredential eller autentiseringsuppgifter från paketet för att autentisera @azure/identity
begäranden till tjänsten. Du kan också ange ett objekt som implementerar TokenCredential-gränssnittet. Om det inte anges används AnonymousCredential.
- options
- StoragePipelineOptions
Valfritt. Alternativ för att konfigurera HTTP-pipelinen.
ContainerClient(string, string, StoragePipelineOptions)
Skapar en instans av ContainerClient.
new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)
Parametrar
- connectionString
-
string
Kontoanslutningssträng eller en SAS-anslutningssträng för ett Azure Storage-konto.
[ Obs! Kontoanslutningssträngen kan bara användas i NODE.JS körning. ] Exempel på kontoanslutningssträng –DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
EXEMPEL på SAS-anslutningssträng – 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
Containernamn.
- options
- StoragePipelineOptions
Valfritt. Alternativ för att konfigurera HTTP-pipelinen.
Egenskapsinformation
accountName
accountName: string
Egenskapsvärde
string
containerName
Namnet på containern.
string containerName
Egenskapsvärde
string
credential
Till exempel AnonymousCredential, StorageSharedKeyCredential eller autentiseringsuppgifter från paketet för att autentisera @azure/identity
begäranden till tjänsten. Du kan också ange ett -objekt som implementerar TokenCredential-gränssnittet. Om inget anges används AnonymousCredential.
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Egenskapsvärde
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
url
Kodat URL-strängvärde.
url: string
Egenskapsvärde
string
Metodinformation
create(ContainerCreateOptions)
Skapar en ny container under det angivna kontot. Om containern med samma namn redan finns misslyckas åtgärden.
function create(options?: ContainerCreateOptions)
Parametrar
- options
- ContainerCreateOptions
Alternativ för åtgärden Skapa container.
Exempel på användning:
const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);
Returer
Promise<ContainerCreateResponse>
createIfNotExists(ContainerCreateOptions)
Skapar en ny container under det angivna kontot. Om containern med samma namn redan finns ändras den inte.
function createIfNotExists(options?: ContainerCreateOptions)
Parametrar
- options
- ContainerCreateOptions
Returer
Promise<ContainerCreateIfNotExistsResponse>
delete(ContainerDeleteMethodOptions)
Markerar den angivna containern för borttagning. Containern och eventuella blobar som finns i den tas senare bort under skräpinsamlingen.
function delete(options?: ContainerDeleteMethodOptions)
Parametrar
- options
- ContainerDeleteMethodOptions
Alternativ för åtgärden Ta bort container.
Returer
Promise<ContainerDeleteResponse>
deleteBlob(string, ContainerDeleteBlobOptions)
Markerar den angivna bloben eller ögonblicksbilden för borttagning. Bloben tas senare bort under skräpinsamlingen. Observera att du måste ta bort alla ögonblicksbilder för att kunna ta bort en blob. Du kan ta bort båda samtidigt med åtgärden Ta bort blob.
function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)
Parametrar
- blobName
-
string
- options
- ContainerDeleteBlobOptions
Alternativ för blobborttagningsåtgärd.
Returer
Promise<BlobDeleteResponse>
Blockera svarsdata för borttagning av blobar.
deleteIfExists(ContainerDeleteMethodOptions)
Markerar den angivna containern för borttagning om den finns. Containern och eventuella blobar som finns i den tas senare bort under skräpinsamlingen.
function deleteIfExists(options?: ContainerDeleteMethodOptions)
Parametrar
- options
- ContainerDeleteMethodOptions
Alternativ för åtgärden Ta bort container.
Returer
Promise<ContainerDeleteIfExistsResponse>
exists(ContainerExistsOptions)
Returnerar sant om Azure-containerresursen som representeras av den här klienten finns. annars falskt. Obs! Använd den här funktionen med försiktighet eftersom en befintlig container kan tas bort av andra klienter eller program. Tvärtom kan nya containrar med samma namn läggas till av andra klienter eller program när den här funktionen har slutförts.
function exists(options?: ContainerExistsOptions)
Parametrar
- options
- ContainerExistsOptions
Returer
Promise<boolean>
generateSasUrl(ContainerGenerateSasUrlOptions)
Endast tillgängligt för ContainerClient som skapats med en autentiseringsuppgift med delad nyckel. Genererar en SAS-URI (Blob Container Service Shared Access Signature) baserat på klientegenskaperna och parametrarna som skickas. SAS signeras av klientens autentiseringsuppgifter för delad nyckel.
function generateSasUrl(options: ContainerGenerateSasUrlOptions)
Parametrar
- options
- ContainerGenerateSasUrlOptions
Valfria parametrar.
Returer
Promise<string>
SAS-URI:n som består av URI:n för den resurs som representeras av den här klienten, följt av den genererade SAS-token.
getAccessPolicy(ContainerGetAccessPolicyOptions)
Hämtar behörigheterna för den angivna containern. Behörigheterna anger om containerdata kan kommas åt offentligt. VARNING! JavaScript-datum kan förlora precision när startsOn parsas och expiresOn-strängar. Till exempel får nya Date("2018-12-31T03:44:23.8827891Z").toISOString() "2018-12-31T03:44:23.882Z".
function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)
Parametrar
- options
- ContainerGetAccessPolicyOptions
Alternativ för åtgärden Hämta åtkomstprincip för container.
Returer
Promise<ContainerGetAccessPolicyResponse>
getAppendBlobClient(string)
Skapar en <xref:AppendBlobClient>
function getAppendBlobClient(blobName: string)
Parametrar
- blobName
-
string
Ett tilläggsblobnamn
Returer
getBlobBatchClient()
Skapar ett BlobBatchClient-objekt för att utföra batchåtgärder.
function getBlobBatchClient()
Returer
Ett nytt BlobBatchClient-objekt för den här containern.
getBlobClient(string)
Skapar en <xref:BlobClient>
function getBlobClient(blobName: string)
Parametrar
- blobName
-
string
Ett blobnamn
Returer
Ett nytt BlobClient-objekt för det angivna blobnamnet.
getBlobLeaseClient(string)
Hämta en <xref:BlobLeaseClient> som hanterar lån på containern.
function getBlobLeaseClient(proposeLeaseId?: string)
Parametrar
- proposeLeaseId
-
string
Ursprungligt föreslaget låne-ID.
Returer
Ett nytt BlobLeaseClient-objekt för att hantera lån för containern.
getBlockBlobClient(string)
Skapar en <xref:BlockBlobClient>
function getBlockBlobClient(blobName: string)
Parametrar
- blobName
-
string
Ett blockblobnamn
Exempel på användning:
const content = "Hello world!";
const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);
Returer
getPageBlobClient(string)
Skapar en <xref:PageBlobClient>
function getPageBlobClient(blobName: string)
Parametrar
- blobName
-
string
Ett sidblobnamn
Returer
getProperties(ContainerGetPropertiesOptions)
Returnerar alla användardefinierade metadata och systemegenskaper för den angivna containern. De data som returneras innehåller inte containerns lista över blobar.
function getProperties(options?: ContainerGetPropertiesOptions)
Parametrar
- options
- ContainerGetPropertiesOptions
Alternativ för åtgärden Hämta egenskaper för container.
Returer
Promise<ContainerGetPropertiesResponse>
listBlobsByHierarchy(string, ContainerListBlobsOptions)
Returnerar en asynkron iterbar iterator för att visa en lista över alla blobar efter hierarki. under det angivna kontot. .byPage() returnerar en asynkron itererbar iterator för att visa en lista över blobar efter hierarki på sidor.
Exempel med syntax 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}`);
}
}
Exempel med 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();
}
Exempel med 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}`);
}
}
Exempel med sidindelning med maximal sidstorlek:
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)
Parametrar
- delimiter
-
string
Tecknet eller strängen som används för att definiera den virtuella hierarkin
- options
- ContainerListBlobsOptions
Alternativ för att lista blobåtgärder.
Returer
PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>
listBlobsFlat(ContainerListBlobsOptions)
Returnerar en asynkron iterbar iterator för att visa en lista över alla blobar under det angivna kontot. .byPage() returnerar en iterator som kan itereras asynkront för att visa en lista över blobarna på sidor.
Exempel med syntax 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}`);
}
Exempel med 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();
}
Exempel med 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}`);
}
}
Exempel med sidindelning med en markör:
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)
Parametrar
- options
- ContainerListBlobsOptions
Alternativ för att lista blobar.
Returer
PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>
En asyncIterableIterator som stöder sidindelning.
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)
Anger behörigheterna för den angivna containern. Behörigheterna anger om blobar i en container kan kommas åt offentligt. När du anger behörigheter för en container ersätts de befintliga behörigheterna. Om ingen åtkomst eller containerAcl har angetts tas den befintliga containerns ACL bort.
När du upprättar en lagrad åtkomstprincip på en container kan det ta upp till 30 sekunder innan den börjar gälla. Under det här intervallet misslyckas en signatur för delad åtkomst som är associerad med den lagrade åtkomstprincipen med statuskod 403 (Förbjuden) tills åtkomstprincipen blir aktiv.
function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)
Parametrar
- access
- PublicAccessType
Nivån för offentlig åtkomst till data i containern.
- containerAcl
Matris med element som var och en har ett unikt ID och information om åtkomstprincipen.
- options
- ContainerSetAccessPolicyOptions
Alternativ för åtgärden Ange åtkomstprincip för container.
Returer
Promise<ContainerSetAccessPolicyResponse>
setMetadata(Metadata, ContainerSetMetadataOptions)
Anger ett eller flera användardefinierade namn/värde-par för den angivna containern. Om inget alternativ har angetts eller inga metadata definierats i parametern tas containermetadata bort.
function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)
Parametrar
- metadata
- Metadata
Ersätt befintliga metadata med det här värdet. Om inget värde anges tas befintliga metadata bort.
- options
- ContainerSetMetadataOptions
Alternativ för åtgärden Ange metadata för containrar.
Returer
Promise<ContainerSetMetadataResponse>
uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)
Skapar en ny blockblob eller uppdaterar innehållet i en befintlig blockblob. Om du uppdaterar en befintlig blockblob skrivs befintliga metadata över på bloben. Partiella uppdateringar stöds inte. innehållet i den befintliga bloben skrivs över med det nya innehållet. Om du vill utföra en partiell uppdatering av en blockblob använder du <xref:BlockBlobClient.stageBlock> och <xref:BlockBlobClient.commitBlockList>.
Det här är en icke-parallell uppladdningsmetod, använd <xref:BlockBlobClient.uploadFile><xref:BlockBlobClient.uploadStream> eller <xref:BlockBlobClient.uploadBrowserData> för bättre prestanda med samtidighetsuppladdning.
function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)
Parametrar
- blobName
-
string
Namnet på blockbloben som ska skapas eller uppdateras.
- body
-
HttpRequestBody
Blob, sträng, ArrayBuffer, ArrayBufferView eller en funktion som returnerar en ny läsbar ström vars förskjutning kommer från datakällans början.
- contentLength
-
number
Längden på brödtexten i byte. Använd Buffer.byteLength() för att beräkna brödtextlängden för en sträng, inklusive icke-Base64/Hex-kodade tecken.
- options
- BlockBlobUploadOptions
Alternativ för att konfigurera blockblobuppladdningsåtgärden.
Returer
Promise<Object>
Svarsdata för blockblobuppladdning och motsvarande BlockBlobClient-instans.
Azure SDK for JavaScript