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 |
get |
取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統資料。 警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date (「2018-12-31T03:44:23.8827891Z」) .toISOString () 會取得 「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 儲存體資料湖檔案系統的用戶端字串,例如 「 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 儲存體資料湖檔案系統的用戶端字串,例如 「 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>
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 權杖。
getAccessPolicy(FileSystemGetAccessPolicyOptions)
取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統資料。
警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date (「2018-12-31T03:44:23.8827891Z」) .toISOString () 會取得 「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
回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與DataLakeServiceClientincludeMetadata
方法所 listFileSystems
傳回的中繼資料索引鍵不同,此選項會保留其原始大小寫。
請參閱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>