ShareDirectoryClient class
En ShareDirectoryClient representerar en URL till Azure Storage-katalogen så att du kan ändra dess filer och kataloger.
- Extends
-
StorageClient
Konstruktorer
Share |
Skapar en instans av DirectoryClient. |
Share |
Skapar en instans av DirectoryClient. |
Egenskaper
name | Namnet på katalogen |
path | Den fullständiga sökvägen till katalogen |
share |
Resursnamnet som motsvarar den här katalogklienten |
Ärvda egenskaper
account |
|
url | URL-strängvärde. |
Metoder
create(Directory |
Skapar en ny katalog under den angivna resursen eller den överordnade katalogen. Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
create |
Skapar en ny fil eller ersätter en fil under den här katalogen. Observera att den endast initierar filen utan innehåll. Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-file |
create |
Skapar en ny katalog under den angivna resursen eller den överordnade katalogen om den inte redan finns. Om katalogen redan finns ändras den inte. Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
create |
Skapar en ny underkatalog under den här katalogen. Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
delete(Directory |
Tar bort den angivna tomma katalogen. Observera att katalogen måste vara tom innan den kan tas bort. Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
delete |
Tar bort den angivna filen under den här katalogen från lagringskontot. När en fil har tagits bort tas den omedelbart bort från lagringskontots index och är inte längre tillgänglig för klienter. Filens data tas senare bort från tjänsten under skräpinsamlingen. Ta bort fil misslyckas med statuskoden 409 (konflikt) och felkoden SharingViolation om filen är öppen på en SMB-klient. Ta bort fil stöds inte på en resursögonblicksbild, vilket är en skrivskyddad kopia av en resurs. Ett försök att utföra den här åtgärden på en resursögonblicksbild misslyckas med 400 (InvalidQueryParameterValue) Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2 |
delete |
Tar bort den angivna tomma katalogen om den finns. Observera att katalogen måste vara tom innan den kan tas bort. Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
delete |
Tar bort den angivna tomma underkatalogen under den här katalogen. Observera att katalogen måste vara tom innan den kan tas bort. Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
exists(Directory |
Returnerar sant om den angivna katalogen finns. annars falskt. Obs! Använd den här funktionen med försiktighet eftersom en befintlig katalog kan tas bort av andra klienter eller program. Tvärtom kan nya kataloger läggas till av andra klienter eller program när den här funktionen har slutförts. |
force |
Framtvinga stängning av alla referenser för en katalog. Se https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles |
force |
Framtvinga stängning av ett specifikt handtag för en katalog. Se https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles |
get |
Skapar ett ShareDirectoryClient-objekt för en underkatalog. |
get |
Skapar ett ShareFileClient-objekt . |
get |
Returnerar alla systemegenskaper för den angivna katalogen och kan även användas för att kontrollera om det finns en katalog. De data som returneras innehåller inte filerna i katalogen eller några underkataloger. Se https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties |
list |
Returnerar en asynkron iterbar iterator för att visa en lista över alla filer och kataloger under det angivna kontot. .byPage() returnerar en asynkron itererbar iterator för att visa en lista över filer och kataloger på sidor. Exempel med syntax
Exempel med
Exempel med
Exempel med sidindelning med en markör:
|
list |
Returnerar en asynkron iterbar iterator för att visa en lista över alla referenser. under det angivna kontot. .byPage() returnerar en iterator som kan itereras asynkront för att visa referenser på sidor. Exempel med syntax
Exempel med
Exempel med
Exempel med sidindelning med en markör:
|
rename(string, Directory |
Byter namn på en katalog. Det här API:et stöder endast namnbyte av en katalog i samma resurs. |
set |
Uppdateringar användardefinierade metadata för den angivna katalogen. Se https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata |
set |
Anger egenskaper för katalogen. Se https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties |
Konstruktorinformation
ShareDirectoryClient(string, Credential_2 | TokenCredential, ShareClientOptions)
Skapar en instans av DirectoryClient.
new ShareDirectoryClient(url: string, credential?: Credential_2 | TokenCredential, options?: ShareClientOptions)
Parametrar
- url
-
string
En URL-sträng som pekar på Azure Storage-filkatalogen, till exempel "https://myaccount.file.core.windows.net/myshare/mydirectory". Du kan lägga till en SAS om du använder AnonymousCredential, till exempel "https://myaccount.file.core.windows.net/myshare/mydirectory?sasString". Den här metoden accepterar en kodad URL eller en icke-kodad URL som pekar på en katalog. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Men om ett katalognamn innehåller %, måste katalognamnet kodas i URL:en. Till exempel en katalog med namnet "mydir%", ska URL:en vara "https://myaccount.file.core.windows.net/myshare/mydir%25".
- credential
Till exempel AnonymousCredential eller StorageSharedKeyCredential. Om det inte anges används AnonymousCredential.
- options
- ShareClientOptions
Valfritt. Alternativ för att konfigurera HTTP-pipelinen.
ShareDirectoryClient(string, Pipeline, ShareClientConfig)
Skapar en instans av DirectoryClient.
new ShareDirectoryClient(url: string, pipeline: Pipeline, options?: ShareClientConfig)
Parametrar
- url
-
string
En URL-sträng som pekar på Azure Storage-filkatalogen, till exempel "https://myaccount.file.core.windows.net/myshare/mydirectory". Du kan lägga till en SAS om du använder AnonymousCredential, till exempel "https://myaccount.file.core.windows.net/myshare/mydirectory?sasString". Den här metoden accepterar en kodad URL eller en icke-kodad URL som pekar på en katalog. Kodad URL-sträng kommer INTE att undantagas två gånger, endast specialtecken i URL-sökvägen kommer att undantagas. Men om ett katalognamn innehåller %, måste katalognamnet kodas i URL:en. Till exempel en katalog med namnet "mydir%", ska URL:en vara "https://myaccount.file.core.windows.net/myshare/mydir%25".
- pipeline
- Pipeline
Anropa newPipeline() för att skapa en standardpipeline eller ange en anpassad pipeline.
- options
- ShareClientConfig
Egenskapsinformation
name
Namnet på katalogen
string name
Egenskapsvärde
string
path
Den fullständiga sökvägen till katalogen
string path
Egenskapsvärde
string
shareName
Resursnamnet som motsvarar den här katalogklienten
string shareName
Egenskapsvärde
string
Information om ärvda egenskaper
accountName
accountName: string
Egenskapsvärde
string
Ärvd från StorageClient.accountName
url
URL-strängvärde.
url: string
Egenskapsvärde
string
Ärvd från StorageClient.url
Metodinformation
create(DirectoryCreateOptions)
Skapar en ny katalog under den angivna resursen eller den överordnade katalogen.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function create(options?: DirectoryCreateOptions): Promise<DirectoryCreateResponse>
Parametrar
- options
- DirectoryCreateOptions
Alternativ för åtgärden Skapa katalog.
Returer
Promise<DirectoryCreateResponse>
Svarsdata för katalogåtgärden.
createFile(string, number, FileCreateOptions)
Skapar en ny fil eller ersätter en fil under den här katalogen. Observera att den endast initierar filen utan innehåll.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-file
function createFile(fileName: string, size: number, options?: FileCreateOptions): Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
Parametrar
- fileName
-
string
- size
-
number
Anger den maximala storleken i byte för filen, upp till 4 TB.
- options
- FileCreateOptions
Alternativ för åtgärden Skapa fil.
Returer
Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
Svarsdata för att skapa filer och motsvarande filklient.
createIfNotExists(DirectoryCreateOptions)
Skapar en ny katalog under den angivna resursen eller den överordnade katalogen om den inte redan finns. Om katalogen redan finns ändras den inte.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function createIfNotExists(options?: DirectoryCreateOptions): Promise<DirectoryCreateIfNotExistsResponse>
Parametrar
- options
- DirectoryCreateOptions
Returer
Promise<DirectoryCreateIfNotExistsResponse>
createSubdirectory(string, DirectoryCreateOptions)
Skapar en ny underkatalog under den här katalogen.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function createSubdirectory(directoryName: string, options?: DirectoryCreateOptions): Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
Parametrar
- directoryName
-
string
- options
- DirectoryCreateOptions
Alternativ för åtgärden Skapa katalog.
Returer
Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
Katalog skapa svarsdata och motsvarande DirectoryClient-instans.
delete(DirectoryDeleteOptions)
Tar bort den angivna tomma katalogen. Observera att katalogen måste vara tom innan den kan tas bort.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function delete(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>
Parametrar
- options
- DirectoryDeleteOptions
Alternativ för åtgärden Ta bort katalog.
Returer
Promise<DirectoryDeleteResponse>
Svarsdata för åtgärden Ta bort katalog.
deleteFile(string, FileDeleteOptions)
Tar bort den angivna filen under den här katalogen från lagringskontot. När en fil har tagits bort tas den omedelbart bort från lagringskontots index och är inte längre tillgänglig för klienter. Filens data tas senare bort från tjänsten under skräpinsamlingen.
Ta bort fil misslyckas med statuskoden 409 (konflikt) och felkoden SharingViolation om filen är öppen på en SMB-klient.
Ta bort fil stöds inte på en resursögonblicksbild, vilket är en skrivskyddad kopia av en resurs. Ett försök att utföra den här åtgärden på en resursögonblicksbild misslyckas med 400 (InvalidQueryParameterValue)
Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2
function deleteFile(fileName: string, options?: FileDeleteOptions): Promise<FileDeleteResponse>
Parametrar
- fileName
-
string
Namnet på filen som ska tas bort
- options
- FileDeleteOptions
Alternativ för åtgärden Filborttagning.
Returer
Promise<FileDeleteResponse>
Svarsdata för filborttagning.
deleteIfExists(DirectoryDeleteOptions)
Tar bort den angivna tomma katalogen om den finns. Observera att katalogen måste vara tom innan den kan tas bort.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function deleteIfExists(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteIfExistsResponse>
Parametrar
- options
- DirectoryDeleteOptions
Returer
Promise<DirectoryDeleteIfExistsResponse>
deleteSubdirectory(string, DirectoryDeleteOptions)
Tar bort den angivna tomma underkatalogen under den här katalogen. Observera att katalogen måste vara tom innan den kan tas bort.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function deleteSubdirectory(directoryName: string, options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>
Parametrar
- directoryName
-
string
- options
- DirectoryDeleteOptions
Alternativ för åtgärden Ta bort katalog.
Returer
Promise<DirectoryDeleteResponse>
Svarsdata för katalogborttagning.
exists(DirectoryExistsOptions)
Returnerar sant om den angivna katalogen finns. annars falskt.
Obs! Använd den här funktionen med försiktighet eftersom en befintlig katalog kan tas bort av andra klienter eller program. Tvärtom kan nya kataloger läggas till av andra klienter eller program när den här funktionen har slutförts.
function exists(options?: DirectoryExistsOptions): Promise<boolean>
Parametrar
- options
- DirectoryExistsOptions
alternativ för åtgärden Finns.
Returer
Promise<boolean>
forceCloseAllHandles(DirectoryForceCloseHandlesSegmentOptions)
Framtvinga stängning av alla referenser för en katalog.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles
function forceCloseAllHandles(options?: DirectoryForceCloseHandlesSegmentOptions): Promise<CloseHandlesInfo>
Parametrar
Returer
Promise<CloseHandlesInfo>
forceCloseHandle(string, DirectoryForceCloseHandlesOptions)
Framtvinga stängning av ett specifikt handtag för en katalog.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles
function forceCloseHandle(handleId: string, options?: DirectoryForceCloseHandlesOptions): Promise<DirectoryForceCloseHandlesResponse>
Parametrar
- handleId
-
string
Specifikt referens-ID, kan inte vara asterisk "*". Använd forceCloseHandlesSegment() för att stänga alla handtag.
Returer
Promise<DirectoryForceCloseHandlesResponse>
getDirectoryClient(string)
Skapar ett ShareDirectoryClient-objekt för en underkatalog.
function getDirectoryClient(subDirectoryName: string): ShareDirectoryClient
Parametrar
- subDirectoryName
-
string
Ett underkatalognamn
Returer
ShareDirectoryClient-objektet för det angivna underkatalognamnet.
Exempel på användning:
const directoryClient = shareClient.getDirectoryClient("<directory name>");
await directoryClient.create();
console.log("Created directory successfully");
getFileClient(string)
Skapar ett ShareFileClient-objekt .
function getFileClient(fileName: string): ShareFileClient
Parametrar
- fileName
-
string
Ett filnamn.
Returer
Ett nytt ShareFileClient-objekt för det angivna filnamnet.
Exempel på användning:
const content = "Hello world!"
const fileClient = directoryClient.getFileClient("<file name>");
await fileClient.create(content.length);
console.log("Created file successfully!");
await fileClient.uploadRange(content, 0, content.length);
console.log("Updated file successfully!")
getProperties(DirectoryGetPropertiesOptions)
Returnerar alla systemegenskaper för den angivna katalogen och kan även användas för att kontrollera om det finns en katalog. De data som returneras innehåller inte filerna i katalogen eller några underkataloger.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties
function getProperties(options?: DirectoryGetPropertiesOptions): Promise<DirectoryGetPropertiesResponse>
Parametrar
- options
- DirectoryGetPropertiesOptions
Alternativ för åtgärden Hämta egenskaper för katalog.
Returer
Promise<DirectoryGetPropertiesResponse>
Svarsdata för åtgärden Hämta egenskaper för katalog.
listFilesAndDirectories(DirectoryListFilesAndDirectoriesOptions)
Returnerar en asynkron iterbar iterator för att visa en lista över alla filer och kataloger under det angivna kontot.
.byPage() returnerar en asynkron itererbar iterator för att visa en lista över filer och kataloger på sidor.
Exempel med syntax for await
:
let i = 1;
for await (const entity of directoryClient.listFilesAndDirectories()) {
if (entity.kind === "directory") {
console.log(`${i++} - directory\t: ${entity.name}`);
} else {
console.log(`${i++} - file\t: ${entity.name}`);
}
}
Exempel med iter.next()
:
let i = 1;
let iter = directoryClient.listFilesAndDirectories();
let entity = await iter.next();
while (!entity.done) {
if (entity.value.kind === "directory") {
console.log(`${i++} - directory\t: ${entity.value.name}`);
} else {
console.log(`${i++} - file\t: ${entity.value.name}`);
}
entity = await iter.next();
}
Exempel med byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of directoryClient
.listFilesAndDirectories()
.byPage({ maxPageSize: 20 })) {
for (const fileItem of response.segment.fileItems) {
console.log(`${i++} - file\t: ${fileItem.name}`);
}
for (const dirItem of response.segment.directoryItems) {
console.log(`${i++} - directory\t: ${dirItem.name}`);
}
}
Exempel med sidindelning med en markör:
let i = 1;
let iterator = directoryClient.listFilesAndDirectories().byPage({ maxPageSize: 3 });
let response = (await iterator.next()).value;
// Prints 3 file and directory names
for (const fileItem of response.segment.fileItems) {
console.log(`${i++} - file\t: ${fileItem.name}`);
}
for (const dirItem of response.segment.directoryItems) {
console.log(`${i++} - directory\t: ${dirItem.name}`);
}
// Gets next marker
let dirMarker = response.continuationToken;
// Passing next marker as continuationToken
iterator = directoryClient
.listFilesAndDirectories()
.byPage({ continuationToken: dirMarker, maxPageSize: 4 });
response = (await iterator.next()).value;
// Prints 10 file and directory names
for (const fileItem of response.segment.fileItems) {
console.log(`${i++} - file\t: ${fileItem.name}`);
}
for (const dirItem of response.segment.directoryItems) {
console.log(`${i++} - directory\t: ${dirItem.name}`);
}
function listFilesAndDirectories(options?: DirectoryListFilesAndDirectoriesOptions): PagedAsyncIterableIterator<({ kind: "file" } & FileItem) | ({ kind: "directory" } & DirectoryItem), DirectoryListFilesAndDirectoriesSegmentResponse, PageSettings>
Parametrar
Alternativ för att visa en lista över filer och katalogåtgärder.
Returer
PagedAsyncIterableIterator<({ kind: "file" } & FileItem) | ({ kind: "directory" } & DirectoryItem), DirectoryListFilesAndDirectoriesSegmentResponse, PageSettings>
En asyncIterableIterator som stöder sidindelning.
listHandles(DirectoryListHandlesOptions)
Returnerar en asynkron iterbar iterator för att visa en lista över alla referenser. under det angivna kontot.
.byPage() returnerar en iterator som kan itereras asynkront för att visa referenser på sidor.
Exempel med syntax for await
:
let i = 1;
let iter = dirClient.listHandles();
for await (const handle of iter) {
console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}
Exempel med iter.next()
:
let i = 1;
let iter = dirClient.listHandles();
let handleItem = await iter.next();
while (!handleItem.done) {
console.log(`Handle ${i++}: ${handleItem.value.path}, opened time ${handleItem.value.openTime}, clientIp ${handleItem.value.clientIp}`);
handleItem = await iter.next();
}
Exempel med byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of dirClient.listHandles({ recursive: true }).byPage({ maxPageSize: 20 })) {
if (response.handleList) {
for (const handle of response.handleList) {
console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}
}
}
Exempel med sidindelning med en markör:
let i = 1;
let iterator = dirClient.listHandles().byPage({ maxPageSize: 2 });
let response = await iterator.next();
// Prints 2 handles
if (response.value.handleList) {
for (const handle of response.value.handleList) {
console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}
}
// Gets next marker
let marker = response.value.continuationToken;
// Passing next marker as continuationToken
console.log(` continuation`);
iterator = dirClient.listHandles().byPage({ continuationToken: marker, maxPageSize: 10 });
response = await iterator.next();
// Prints 2 more handles assuming you have more than four directory/files opened
if (!response.done && response.value.handleList) {
for (const handle of response.value.handleList) {
console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}
}
function listHandles(options?: DirectoryListHandlesOptions): PagedAsyncIterableIterator<HandleItem, DirectoryListHandlesResponse, PageSettings>
Parametrar
- options
- DirectoryListHandlesOptions
Alternativ för att lista hanterar åtgärder.
En asyncIterableIterator som stöder sidindelning.
Returer
rename(string, DirectoryRenameOptions)
Byter namn på en katalog. Det här API:et stöder endast namnbyte av en katalog i samma resurs.
function rename(destinationPath: string, options?: DirectoryRenameOptions): Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>
Parametrar
- destinationPath
-
string
Anger målsökvägen som du vill byta namn på. Sökvägen kodas för att placeras i en URL för att ange målet.
- options
- DirectoryRenameOptions
Alternativ för namnbytesåtgärden.
Returer
Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>
Svarsdata för filbytesåtgärden.
Exempel på användning:
// Rename the directory
await diretoryClient.rename(destinationPath);
console.log("Renamed directory successfully!");
setMetadata(Metadata, DirectorySetMetadataOptions)
Uppdateringar användardefinierade metadata för den angivna katalogen.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata
function setMetadata(metadata?: Metadata, options?: DirectorySetMetadataOptions): Promise<DirectorySetMetadataResponse>
Parametrar
- metadata
- Metadata
Om inga metadata anges tas alla befintliga katalogmetadata bort
- options
- DirectorySetMetadataOptions
Alternativ för åtgärden Kataloguppsättningsmetadata.
Returer
Promise<DirectorySetMetadataResponse>
Svarsdata för åtgärden Kataloguppsättningsmetadata.
setProperties(DirectoryProperties)
Anger egenskaper för katalogen.
Se https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties
function setProperties(properties?: DirectoryProperties): Promise<DirectorySetPropertiesResponse>
Parametrar
- properties
- DirectoryProperties
Returer
Promise<DirectorySetPropertiesResponse>