ShareDirectoryClient class
Een ShareDirectoryClient vertegenwoordigt een URL naar de Azure Storage-map, zodat u de bestanden en mappen kunt bewerken.
- Extends
Constructors
Share |
Hiermee maakt u een exemplaar van DirectoryClient. |
Share |
Hiermee maakt u een exemplaar van DirectoryClient. |
Eigenschappen
name | De naam van de map |
path | Het volledige pad van de map |
share |
De sharenaam die overeenkomt met deze directoryclient |
Overgenomen eigenschappen
account |
|
url | URL-tekenreekswaarde. |
Methoden
create(Directory |
Hiermee maakt u een nieuwe map onder de opgegeven share of bovenliggende map. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
create |
Hiermee maakt u een nieuw bestand of vervangt u een bestand in deze map. Het bestand wordt alleen geïnitialiseerd zonder inhoud. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-file |
create |
Hiermee maakt u een nieuwe map onder de opgegeven share of bovenliggende map als deze nog niet bestaat. Als de map al bestaat, wordt deze niet gewijzigd. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
create |
Hiermee maakt u een nieuwe submap onder deze map. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory |
delete(Directory |
Hiermee verwijdert u de opgegeven lege map. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
delete |
Hiermee verwijdert u het opgegeven bestand in deze map uit het opslagaccount. Wanneer een bestand is verwijderd, wordt het onmiddellijk verwijderd uit de index van het opslagaccount en is het niet meer toegankelijk voor clients. De gegevens van het bestand worden later verwijderd uit de service tijdens de garbagecollection. Bestand verwijderen mislukt met statuscode 409 (conflict) en foutcode SharingViolation als het bestand is geopend op een SMB-client. Bestand verwijderen wordt niet ondersteund op een momentopname van een share. Dit is een alleen-lezen kopie van een share. Een poging om deze bewerking uit te voeren op een momentopname van een share mislukt met 400 (InvalidQueryParameterValue) Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2 |
delete |
Hiermee verwijdert u de opgegeven lege map als deze bestaat. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
delete |
Hiermee verwijdert u de opgegeven lege submap onder deze map. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory |
exists(Directory |
Retourneert true als de opgegeven map bestaat; anders onwaar. OPMERKING: gebruik deze functie zorgvuldig omdat een bestaande map mogelijk door andere clients of toepassingen wordt verwijderd. Omgekeerd kunnen nieuwe mappen worden toegevoegd door andere clients of toepassingen nadat deze functie is voltooid. |
force |
Alle ingangen voor een map geforceerd sluiten. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles |
force |
Een specifieke ingang voor een map geforceerd sluiten. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles |
get |
Hiermee maakt u een ShareDirectoryClient-object voor een submap. |
get |
Hiermee maakt u een ShareFileClient -object. |
get |
Retourneert alle systeemeigenschappen voor de opgegeven map en kan ook worden gebruikt om het bestaan van een map te controleren. De geretourneerde gegevens bevatten geen bestanden in de map of submappen. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties |
list |
Retourneert een asynchrone iterator om alle bestanden en mappen onder het opgegeven account weer te geven. .byPage() retourneert een asynchrone iterator om de bestanden en mappen op pagina's weer te geven. Voorbeeld met syntaxis
Voorbeeld met
Voorbeeld met
Voorbeeld van paging met een markering:
|
list |
Retourneert een asynchrone iterator om alle ingangen weer te geven. onder het opgegeven account. .byPage() retourneert een asynchrone iterator om de ingangen in pagina's weer te geven. Voorbeeld met syntaxis
Voorbeeld met
Voorbeeld met
Voorbeeld van paging met een markering:
|
rename(string, Directory |
Hiermee wijzigt u de naam van een map. Deze API biedt alleen ondersteuning voor het wijzigen van de naam van een map in dezelfde share. |
set |
Updates door de gebruiker gedefinieerde metagegevens voor de opgegeven map. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata |
set |
Hiermee stelt u eigenschappen voor de map in. Zie https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties |
Constructordetails
ShareDirectoryClient(string, Credential_2, StoragePipelineOptions)
Hiermee maakt u een exemplaar van DirectoryClient.
new ShareDirectoryClient(url: string, credential?: Credential_2, options?: StoragePipelineOptions)
Parameters
- url
-
string
Een URL-tekenreeks die verwijst naar de Azure Storage-bestandsmap, zoals 'https://myaccount.file.core.windows.net/myshare/mydirectory". U kunt een SAS toevoegen als u AnonymousCredential gebruikt, zoals 'https://myaccount.file.core.windows.net/myshare/mydirectory?sasString". Deze methode accepteert een gecodeerde URL of niet-gecodeerde URL die verwijst naar een map. Gecodeerde URL-tekenreeks wordt NIET tweemaal ge escaped, alleen speciale tekens in HET URL-pad worden escaped. Als een mapnaam echter %bevat, moet de mapnaam worden gecodeerd in de URL. Zoals een map met de naam 'mydir%', moet de URL 'https://myaccount.file.core.windows.net/myshare/mydir%25"' zijn.
- credential
- Credential_2
Zoals AnonymousCredential of StorageSharedKeyCredential. Als dit niet is opgegeven, wordt AnonymousCredential gebruikt.
- options
- StoragePipelineOptions
Optioneel. Opties voor het configureren van de HTTP-pijplijn.
ShareDirectoryClient(string, Pipeline)
Hiermee maakt u een exemplaar van DirectoryClient.
new ShareDirectoryClient(url: string, pipeline: Pipeline)
Parameters
- url
-
string
Een URL-tekenreeks die verwijst naar de Azure Storage-bestandsmap, zoals 'https://myaccount.file.core.windows.net/myshare/mydirectory". U kunt een SAS toevoegen als u AnonymousCredential gebruikt, zoals 'https://myaccount.file.core.windows.net/myshare/mydirectory?sasString". Deze methode accepteert een gecodeerde URL of niet-gecodeerde URL die verwijst naar een map. Gecodeerde URL-tekenreeks wordt NIET tweemaal ge escaped, alleen speciale tekens in HET URL-pad worden escaped. Als een mapnaam echter %bevat, moet de mapnaam worden gecodeerd in de URL. Zoals een map met de naam 'mydir%', moet de URL 'https://myaccount.file.core.windows.net/myshare/mydir%25"' zijn.
- pipeline
- Pipeline
Roep newPipeline() aan om een standaardpijplijn te maken of een aangepaste pijplijn op te geven.
Eigenschapdetails
name
De naam van de map
string name
Waarde van eigenschap
string
path
Het volledige pad van de map
string path
Waarde van eigenschap
string
shareName
De sharenaam die overeenkomt met deze directoryclient
string shareName
Waarde van eigenschap
string
Details van overgenomen eigenschap
accountName
url
Methodedetails
create(DirectoryCreateOptions)
Hiermee maakt u een nieuwe map onder de opgegeven share of bovenliggende map.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function create(options?: DirectoryCreateOptions): Promise<DirectoryCreateResponse>
Parameters
- options
- DirectoryCreateOptions
Opties voor de bewerking Map maken.
Retouren
Promise<DirectoryCreateResponse>
Antwoordgegevens voor de directorybewerking.
createFile(string, number, FileCreateOptions)
Hiermee maakt u een nieuw bestand of vervangt u een bestand in deze map. Het bestand wordt alleen geïnitialiseerd zonder inhoud.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-file
function createFile(fileName: string, size: number, options?: FileCreateOptions): Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
Parameters
- fileName
-
string
- size
-
number
Hiermee geeft u de maximale grootte in bytes voor het bestand op, maximaal 4 TB.
- options
- FileCreateOptions
Opties voor de bewerking Bestand maken.
Retouren
Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
Antwoordgegevens voor het maken van bestanden en de bijbehorende bestandsclient.
createIfNotExists(DirectoryCreateOptions)
Hiermee maakt u een nieuwe map onder de opgegeven share of bovenliggende map als deze nog niet bestaat. Als de map al bestaat, wordt deze niet gewijzigd.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function createIfNotExists(options?: DirectoryCreateOptions): Promise<DirectoryCreateIfNotExistsResponse>
Parameters
- options
- DirectoryCreateOptions
Retouren
Promise<DirectoryCreateIfNotExistsResponse>
createSubdirectory(string, DirectoryCreateOptions)
Hiermee maakt u een nieuwe submap onder deze map.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory
function createSubdirectory(directoryName: string, options?: DirectoryCreateOptions): Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
Parameters
- directoryName
-
string
- options
- DirectoryCreateOptions
Opties voor de bewerking Map maken.
Retouren
Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
Adreslijst maken antwoordgegevens en het bijbehorende DirectoryClient-exemplaar.
delete(DirectoryDeleteOptions)
Hiermee verwijdert u de opgegeven lege map. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function delete(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>
Parameters
- options
- DirectoryDeleteOptions
Opties voor de bewerking Map verwijderen.
Retouren
Promise<DirectoryDeleteResponse>
Antwoordgegevens voor de bewerking Map verwijderen.
deleteFile(string, FileDeleteOptions)
Hiermee verwijdert u het opgegeven bestand in deze map uit het opslagaccount. Wanneer een bestand is verwijderd, wordt het onmiddellijk verwijderd uit de index van het opslagaccount en is het niet meer toegankelijk voor clients. De gegevens van het bestand worden later verwijderd uit de service tijdens de garbagecollection. Bestand verwijderen mislukt met statuscode 409 (conflict) en foutcode SharingViolation als het bestand is geopend op een SMB-client.
Bestand verwijderen wordt niet ondersteund op een momentopname van een share. Dit is een alleen-lezen kopie van een share. Een poging om deze bewerking uit te voeren op een momentopname van een share mislukt met 400 (InvalidQueryParameterValue)
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2
function deleteFile(fileName: string, options?: FileDeleteOptions): Promise<FileDeleteResponse>
Parameters
- fileName
-
string
Naam van het bestand dat u wilt verwijderen
- options
- FileDeleteOptions
Opties voor de bewerking Bestand verwijderen.
Retouren
Promise<FileDeleteResponse>
Antwoordgegevens voor bestandsverwijdering.
deleteIfExists(DirectoryDeleteOptions)
Hiermee verwijdert u de opgegeven lege map als deze bestaat. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function deleteIfExists(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteIfExistsResponse>
Parameters
- options
- DirectoryDeleteOptions
Retouren
Promise<DirectoryDeleteIfExistsResponse>
deleteSubdirectory(string, DirectoryDeleteOptions)
Hiermee verwijdert u de opgegeven lege submap onder deze map. Houd er rekening mee dat de map leeg moet zijn voordat deze kan worden verwijderd.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory
function deleteSubdirectory(directoryName: string, options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>
Parameters
- directoryName
-
string
- options
- DirectoryDeleteOptions
Opties voor de bewerking Map verwijderen.
Retouren
Promise<DirectoryDeleteResponse>
Antwoordgegevens voor adreslijstverwijdering.
exists(DirectoryExistsOptions)
Retourneert true als de opgegeven map bestaat; anders onwaar. OPMERKING: gebruik deze functie zorgvuldig omdat een bestaande map mogelijk door andere clients of toepassingen wordt verwijderd. Omgekeerd kunnen nieuwe mappen worden toegevoegd door andere clients of toepassingen nadat deze functie is voltooid.
function exists(options?: DirectoryExistsOptions): Promise<boolean>
Parameters
- options
- DirectoryExistsOptions
opties voor de bewerking Exists.
Retouren
Promise<boolean>
forceCloseAllHandles(DirectoryForceCloseHandlesSegmentOptions)
Alle ingangen voor een map geforceerd sluiten.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles
function forceCloseAllHandles(options?: DirectoryForceCloseHandlesSegmentOptions): Promise<CloseHandlesInfo>
Parameters
Retouren
Promise<CloseHandlesInfo>
forceCloseHandle(string, DirectoryForceCloseHandlesOptions)
Een specifieke ingang voor een map geforceerd sluiten.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles
function forceCloseHandle(handleId: string, options?: DirectoryForceCloseHandlesOptions): Promise<DirectoryForceCloseHandlesResponse>
Parameters
- handleId
-
string
Specifieke ingangs-id, mag geen sterretje *zijn. Gebruik forceCloseHandlesSegment() om alle grepen te sluiten.
Retouren
Promise<DirectoryForceCloseHandlesResponse>
getDirectoryClient(string)
Hiermee maakt u een ShareDirectoryClient-object voor een submap.
function getDirectoryClient(subDirectoryName: string): ShareDirectoryClient
Parameters
- subDirectoryName
-
string
Naam van een submap
Retouren
Het ShareDirectoryClient-object voor de opgegeven submapnaam.
Gebruiksvoorbeeld:
const directoryClient = shareClient.getDirectoryClient("<directory name>");
await directoryClient.create();
console.log("Created directory successfully");
getFileClient(string)
Hiermee maakt u een ShareFileClient -object.
function getFileClient(fileName: string): ShareFileClient
Parameters
- fileName
-
string
Een bestandsnaam.
Retouren
Een nieuw ShareFileClient-object voor de opgegeven bestandsnaam.
Gebruiksvoorbeeld:
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)
Retourneert alle systeemeigenschappen voor de opgegeven map en kan ook worden gebruikt om het bestaan van een map te controleren. De geretourneerde gegevens bevatten geen bestanden in de map of submappen.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties
function getProperties(options?: DirectoryGetPropertiesOptions): Promise<DirectoryGetPropertiesResponse>
Parameters
- options
- DirectoryGetPropertiesOptions
Opties voor de bewerking Eigenschappen ophalen van directory.
Retouren
Promise<DirectoryGetPropertiesResponse>
Antwoordgegevens voor de bewerking Eigenschappen van map ophalen.
listFilesAndDirectories(DirectoryListFilesAndDirectoriesOptions)
Retourneert een asynchrone iterator om alle bestanden en mappen onder het opgegeven account weer te geven. .byPage() retourneert een asynchrone iterator om de bestanden en mappen op pagina's weer te geven.
Voorbeeld met syntaxis 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}`);
}
}
Voorbeeld met 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();
}
Voorbeeld met 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}`);
}
}
Voorbeeld van paging met een markering:
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>
Parameters
Opties voor het weergeven van bestanden en mappen.
Retouren
PagedAsyncIterableIterator<({ kind: "file" } & FileItem) | ({ kind: "directory" } & DirectoryItem), DirectoryListFilesAndDirectoriesSegmentResponse>
Een asynchroneIterableIterator die ondersteuning biedt voor paging.
listHandles(DirectoryListHandlesOptions)
Retourneert een asynchrone iterator om alle ingangen weer te geven. onder het opgegeven account. .byPage() retourneert een asynchrone iterator om de ingangen in pagina's weer te geven.
Voorbeeld met syntaxis 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}`);
}
Voorbeeld met 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();
}
Voorbeeld met 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}`);
}
}
}
Voorbeeld van paging met een markering:
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>
Parameters
- options
- DirectoryListHandlesOptions
Opties voor het weergeven van de bewerking handles.
Een asynchroneIterableIterator die ondersteuning biedt voor paging.
Retouren
PagedAsyncIterableIterator<HandleItem, DirectoryListHandlesResponse>
rename(string, DirectoryRenameOptions)
Hiermee wijzigt u de naam van een map. Deze API biedt alleen ondersteuning voor het wijzigen van de naam van een map in dezelfde share.
function rename(destinationPath: string, options?: DirectoryRenameOptions): Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>
Parameters
- destinationPath
-
string
Hiermee geeft u het doelpad om de naam te wijzigen in. Het pad wordt gecodeerd om in een URL te plaatsen om de bestemming op te geven.
- options
- DirectoryRenameOptions
Opties voor de bewerking voor het wijzigen van de naam.
Retouren
Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>
Antwoordgegevens voor de bewerking voor het wijzigen van de naam van het bestand.
Gebruiksvoorbeeld:
// Rename the directory
await diretoryClient.rename(destinationPath);
console.log("Renamed directory successfully!");
setMetadata(Metadata, DirectorySetMetadataOptions)
Updates door de gebruiker gedefinieerde metagegevens voor de opgegeven map.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata
function setMetadata(metadata?: Metadata, options?: DirectorySetMetadataOptions): Promise<DirectorySetMetadataResponse>
Parameters
- metadata
- Metadata
Als er geen metagegevens zijn opgegeven, worden alle bestaande mapmetagegevens verwijderd
- options
- DirectorySetMetadataOptions
Opties voor de bewerking Metagegevens van directoryset.
Retouren
Promise<DirectorySetMetadataResponse>
Antwoordgegevens voor de bewerking Metagegevens van de directoryset.
setProperties(DirectoryProperties)
Hiermee stelt u eigenschappen voor de map in.
Zie https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties
function setProperties(properties?: DirectoryProperties): Promise<DirectorySetPropertiesResponse>
Parameters
- properties
- DirectoryProperties
Retouren
Promise<DirectorySetPropertiesResponse>