DataLakeFileSystemClient class
DataLakeFileSystemClient 代表 Azure 記憶體文件系統的 URL,可讓您操作其目錄和檔案。
- Extends
-
StorageClient
建構函式
Data |
從 URL 和管線建立 DataLakeFileSystemClient 的實例。 |
Data |
從 URL 和認證建立 DataLakeFileSystemClient 的實例。 |
屬性
name | 目前檔案系統的名稱。 |
繼承的屬性
account |
|
credential | 例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自 |
url | 編碼的 URL 字串值。 |
方法
create(File |
在指定的帳戶下建立新的文件系統。 如果同名的文件系統已經存在,則作業會失敗。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/create-container |
create |
在指定的帳戶下建立新的文件系統。 如果同名的文件系統已經存在,則不會變更。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/create-container |
delete(File |
刪除目前的檔案系統。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container |
delete |
如果存在,請刪除目前的檔案系統。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container |
exists(File |
如果此用戶端所代表的文件系統存在,則傳回 true;否則為 false。 注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案系統。 反之亦然,這個函式完成之後,其他用戶端或應用程式可能會新增具有相同名稱的新文件系統。 |
generate |
僅適用於以共用密鑰認證建構的 DataLakeFileSystemClient。 根據傳入的用戶端屬性和參數,產生字串以簽署服務共用存取簽章 (SAS) URI。 SAS 是由客戶端的共用金鑰認證所簽署。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas |
generate |
僅適用於以共用密鑰認證建構的 DataLakeFileSystemClient。 根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由客戶端的共用金鑰認證所簽署。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas |
generate |
根據傳入的用戶端屬性和參數,產生字串以簽署服務共用存取簽章 (SAS) URI。 SAS 是由輸入使用者委派密鑰所簽署。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas |
generate |
根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由輸入使用者委派密鑰所簽署。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas |
get |
取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔系統數據。 警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date(“2018-12-31T03:44:23.8827891Z”)將會取得 “2018-12-31T03:44:23.882Z”。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl |
get |
取得管理文件系統租用的 DataLakeLeaseClient。 |
get |
在目前的文件系統下建立 DataLakeDirectoryClient 物件。 |
get |
在目前的文件系統下建立 DataLakeFileClient 物件。 |
get |
傳回指定檔案系統的所有使用者定義元數據和系統屬性。 警告:回應中傳回的 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties |
list |
傳回異步反覆運算器,以列出指定文件系統下的所有路徑(目錄和檔案)。 .byPage() 會傳回異步可反覆運算迭代器,以列出頁面的路徑。 使用
使用
使用
使用分頁搭配標記的範例:
請參閱 https://docs.microsoft.com/rest/api/storageservices/list-blobs |
list |
傳回異步反覆運算器,以列出指定文件系統下的所有路徑(目錄和檔案)。 .byPage() 會傳回異步可反覆運算迭代器,以列出頁面的路徑。 使用
使用
使用
使用分頁搭配標記的範例:
請參閱 https://docs.microsoft.com/rest/api/storageservices/list-blobs |
set |
設定指定檔案系統的許可權。 許可權會指出是否可以公開存取文件系統中的目錄或檔案。 當您設定檔案系統的許可權時,會取代現有的許可權。 如果未提供任何存取權或 containerAcl,則會移除現有的文件系統 ACL。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl |
set |
設定指定檔案系統的一或多個使用者定義名稱/值組。 如果未提供任何選項,或參數中未定義任何元數據,則會移除文件系統元數據。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata |
undelete |
還原虛刪除的路徑。 請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob |
建構函式詳細資料
DataLakeFileSystemClient(string, Pipeline)
從 URL 和管線建立 DataLakeFileSystemClient 的實例。
new DataLakeFileSystemClient(url: string, pipeline: Pipeline)
參數
- url
-
string
指向 Azure 記憶體 Data Lake 檔案系統的用戶端字串,例如 「https://myaccount.dfs.core.windows.net/filesystem"。 如果使用 AnonymousCredential,則可以附加 SAS,例如 “https://myaccount.dfs.core.windows.net/filesystem?sasString"。
- pipeline
- Pipeline
呼叫 newPipeline() 以建立預設管線,或提供自定義管線。
DataLakeFileSystemClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
從 URL 和認證建立 DataLakeFileSystemClient 的實例。
new DataLakeFileSystemClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
參數
- url
-
string
指向 Azure 記憶體 Data Lake 檔案系統的用戶端字串,例如 「https://myaccount.dfs.core.windows.net/filesystem"。 如果使用 AnonymousCredential,則可以附加 SAS,例如 “https://myaccount.dfs.core.windows.net/filesystem?sasString"。
- credential
-
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自 @azure/identity
套件的認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。
- options
- StoragePipelineOptions
自選。 設定 HTTP 管線的選項。
屬性詳細資料
name
目前檔案系統的名稱。
string name
屬性值
string
繼承的屬性詳細資料
accountName
accountName: string
屬性值
string
繼承自 StorageClient.accountName
credential
例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自 @azure/identity
套件的認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
屬性值
繼承自 StorageClient.credential
url
編碼的 URL 字串值。
url: string
屬性值
string
繼承自 StorageClient.url
方法詳細資料
create(FileSystemCreateOptions)
在指定的帳戶下建立新的文件系統。 如果同名的文件系統已經存在,則作業會失敗。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/create-container
function create(options?: FileSystemCreateOptions): Promise<FileSystemCreateResponse>
參數
- options
- FileSystemCreateOptions
自選。 建立文件系統時的選項。
傳回
Promise<FileSystemCreateResponse>
createIfNotExists(FileSystemCreateOptions)
在指定的帳戶下建立新的文件系統。 如果同名的文件系統已經存在,則不會變更。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/create-container
function createIfNotExists(options?: FileSystemCreateOptions): Promise<FileSystemCreateIfNotExistsResponse>
參數
- options
- FileSystemCreateOptions
傳回
Promise<FileSystemCreateIfNotExistsResponse>
delete(FileSystemDeleteOptions)
刪除目前的檔案系統。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container
function delete(options?: FileSystemDeleteOptions): Promise<FileSystemDeleteResponse>
參數
- options
- FileSystemDeleteOptions
自選。 刪除檔案系統時的選項。
傳回
Promise<FileSystemDeleteResponse>
deleteIfExists(FileSystemDeleteOptions)
如果存在,請刪除目前的檔案系統。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container
function deleteIfExists(options?: FileSystemDeleteOptions): Promise<FileSystemDeleteIfExistsResponse>
參數
- options
- FileSystemDeleteOptions
傳回
Promise<FileSystemDeleteIfExistsResponse>
exists(FileSystemExistsOptions)
如果此用戶端所代表的文件系統存在,則傳回 true;否則為 false。
注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案系統。 反之亦然,這個函式完成之後,其他用戶端或應用程式可能會新增具有相同名稱的新文件系統。
function exists(options?: FileSystemExistsOptions): Promise<boolean>
參數
- options
- FileSystemExistsOptions
傳回
Promise<boolean>
generateSasStringToSign(FileSystemGenerateSasUrlOptions)
僅適用於以共用密鑰認證建構的 DataLakeFileSystemClient。
根據傳入的用戶端屬性和參數,產生字串以簽署服務共用存取簽章 (SAS) URI。 SAS 是由客戶端的共用金鑰認證所簽署。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateSasStringToSign(options: FileSystemGenerateSasUrlOptions): string
參數
- options
- FileSystemGenerateSasUrlOptions
選擇性參數。
傳回
string
由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 令牌。
generateSasUrl(FileSystemGenerateSasUrlOptions)
僅適用於以共用密鑰認證建構的 DataLakeFileSystemClient。
根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由客戶端的共用金鑰認證所簽署。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateSasUrl(options: FileSystemGenerateSasUrlOptions): Promise<string>
參數
- options
- FileSystemGenerateSasUrlOptions
選擇性參數。
傳回
Promise<string>
由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 令牌。
generateUserDelegationSasStringToSign(FileSystemGenerateSasUrlOptions, UserDelegationKey)
根據傳入的用戶端屬性和參數,產生字串以簽署服務共用存取簽章 (SAS) URI。 SAS 是由輸入使用者委派密鑰所簽署。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateUserDelegationSasStringToSign(options: FileSystemGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): string
參數
- options
- FileSystemGenerateSasUrlOptions
選擇性參數。
- userDelegationKey
- UserDelegationKey
傳回值 blobServiceClient.getUserDelegationKey()
傳回
string
由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 令牌。
generateUserDelegationSasUrl(FileSystemGenerateSasUrlOptions, UserDelegationKey)
根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由輸入使用者委派密鑰所簽署。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateUserDelegationSasUrl(options: FileSystemGenerateSasUrlOptions, userDelegationKey: UserDelegationKey): Promise<string>
參數
- options
- FileSystemGenerateSasUrlOptions
選擇性參數。
- userDelegationKey
- UserDelegationKey
傳回值 blobServiceClient.getUserDelegationKey()
傳回
Promise<string>
由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 令牌。
getAccessPolicy(FileSystemGetAccessPolicyOptions)
取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔系統數據。
警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date(“2018-12-31T03:44:23.8827891Z”)將會取得 “2018-12-31T03:44:23.882Z”。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl
function getAccessPolicy(options?: FileSystemGetAccessPolicyOptions): Promise<FileSystemGetAccessPolicyResponse>
參數
- options
- FileSystemGetAccessPolicyOptions
自選。 取得文件系統存取原則時的選項。
傳回
Promise<FileSystemGetAccessPolicyResponse>
getDataLakeLeaseClient(string)
取得管理文件系統租用的 DataLakeLeaseClient。
function getDataLakeLeaseClient(proposeLeaseId?: string): DataLakeLeaseClient
參數
- proposeLeaseId
-
string
自選。 初始建議的租用標識碼。
傳回
getDirectoryClient(string)
在目前的文件系統下建立 DataLakeDirectoryClient 物件。
function getDirectoryClient(directoryName: string): DataLakeDirectoryClient
參數
- directoryName
-
string
傳回
getFileClient(string)
在目前的文件系統下建立 DataLakeFileClient 物件。
function getFileClient(fileName: string): DataLakeFileClient
參數
- fileName
-
string
傳回
getProperties(FileSystemGetPropertiesOptions)
傳回指定檔案系統的所有使用者定義元數據和系統屬性。
警告:回應中傳回的 metadata
物件會以小寫表示,即使它們原本包含大寫字元也一樣。 這與使用 listFileSystems
選項 DataLakeServiceClientincludeMetadata
方法所傳回的元數據索引鍵不同,此選項會保留其原始大小寫。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties
function getProperties(options?: FileSystemGetPropertiesOptions): Promise<FileSystemGetPropertiesResponse>
參數
- options
- FileSystemGetPropertiesOptions
自選。 取得檔案系統屬性時的選項。
傳回
Promise<FileSystemGetPropertiesResponse>
listDeletedPaths(ListDeletedPathsOptions)
傳回異步反覆運算器,以列出指定文件系統下的所有路徑(目錄和檔案)。
.byPage() 會傳回異步可反覆運算迭代器,以列出頁面的路徑。
使用 for await
語法的範例:
// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const deletePath of fileSystemClient.listDeletedPaths()) {
console.log(`Path ${i++}: ${deletePath.name}`);
}
使用 iter.next()
的範例:
let i = 1;
let iter = fileSystemClient.listDeletedPaths();
let deletedPathItem = await iter.next();
while (!deletedPathItem.done) {
console.log(`Path ${i++}: ${deletedPathItem.value.name}`);
pathItem = await iter.next();
}
使用 byPage()
的範例:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 20 })) {
for (const deletePath of response.pathItems) {
console.log(`Path ${i++}: ${deletePath.name}`);
}
}
使用分頁搭配標記的範例:
let i = 1;
let iterator = fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 path names
for (const path of response.pathItems) {
console.log(`Path ${i++}: ${path.name}}`);
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = fileSystemClient.listDeletedPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints 10 path names
for (const deletePath of response.deletedPathItems) {
console.log(`Path ${i++}: ${deletePath.name}`);
}
請參閱 https://docs.microsoft.com/rest/api/storageservices/list-blobs
function listDeletedPaths(options?: ListDeletedPathsOptions): PagedAsyncIterableIterator<DeletedPath, FileSystemListDeletedPathsResponse, PageSettings>
參數
- options
- ListDeletedPathsOptions
自選。 列出已刪除路徑時的選項。
傳回
listPaths(ListPathsOptions)
傳回異步反覆運算器,以列出指定文件系統下的所有路徑(目錄和檔案)。
.byPage() 會傳回異步可反覆運算迭代器,以列出頁面的路徑。
使用 for await
語法的範例:
// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const path of fileSystemClient.listPaths()) {
console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}
使用 iter.next()
的範例:
let i = 1;
let iter = fileSystemClient.listPaths();
let pathItem = await iter.next();
while (!pathItem.done) {
console.log(`Path ${i++}: ${pathItem.value.name}, isDirectory?: ${pathItem.value.isDirectory}`);
pathItem = await iter.next();
}
使用 byPage()
的範例:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listPaths().byPage({ maxPageSize: 20 })) {
for (const path of response.pathItems) {
console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}
}
使用分頁搭配標記的範例:
let i = 1;
let iterator = fileSystemClient.listPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 path names
for (const path of response.pathItems) {
console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = fileSystemClient.listPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints 10 path names
for (const path of response.pathItems) {
console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}
請參閱 https://docs.microsoft.com/rest/api/storageservices/list-blobs
function listPaths(options?: ListPathsOptions): PagedAsyncIterableIterator<Path, FileSystemListPathsResponse, PageSettings>
參數
- options
- ListPathsOptions
自選。 列出路徑時的選項。
傳回
setAccessPolicy(PublicAccessType, SignedIdentifier<AccessPolicy>[], FileSystemSetAccessPolicyOptions)
設定指定檔案系統的許可權。 許可權會指出是否可以公開存取文件系統中的目錄或檔案。
當您設定檔案系統的許可權時,會取代現有的許可權。 如果未提供任何存取權或 containerAcl,則會移除現有的文件系統 ACL。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl
function setAccessPolicy(access?: PublicAccessType, fileSystemAcl?: SignedIdentifier<AccessPolicy>[], options?: FileSystemSetAccessPolicyOptions): Promise<FileSystemSetAccessPolicyResponse>
參數
- access
- PublicAccessType
自選。 對文件系統中數據的公用存取層級。
- fileSystemAcl
自選。 每個元素的陣列都有唯一的標識碼和存取原則的詳細數據。
- options
- FileSystemSetAccessPolicyOptions
自選。 設定文件系統存取原則時的選項。
傳回
Promise<FileSystemSetAccessPolicyResponse>
setMetadata(Metadata, FileSystemSetMetadataOptions)
設定指定檔案系統的一或多個使用者定義名稱/值組。
如果未提供任何選項,或參數中未定義任何元數據,則會移除文件系統元數據。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata
function setMetadata(metadata?: Metadata, options?: FileSystemSetMetadataOptions): Promise<FileSystemSetMetadataResponse>
參數
- metadata
- Metadata
將現有的元數據取代為此值。 如果未提供任何值,則會移除現有的元數據。
- options
- FileSystemSetMetadataOptions
自選。 設定檔案系統元數據時的選項。
傳回
Promise<FileSystemSetMetadataResponse>
undeletePath(string, string, FileSystemUndeletePathOption)
還原虛刪除的路徑。
請參閱 https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob
function undeletePath(deletedPath: string, deletionId: string, options?: FileSystemUndeletePathOption): Promise<FileSystemUndeletePathResponse>
參數
- deletedPath
-
string
必填。 已刪除路徑的路徑。
- deletionId
-
string
必填。 與虛刪除路徑相關聯的刪除標識碼。
- options
- FileSystemUndeletePathOption
傳回
Promise<FileSystemUndeletePathResponse>