你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
DataLakeFileSystemClient class
DataLakeFileSystemClient 表示 Azure 存储文件系统的 URL,允许你操作其目录和文件。
- 扩展
-
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 日期可能会丢失精度。 例如,新日期(“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(如“https://myaccount.dfs.core.windows.net/filesystem?sasString"),则可以追加 SAS。
- 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(如“https://myaccount.dfs.core.windows.net/filesystem?sasString"),则可以追加 SAS。
- 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 日期可能会丢失精度。 例如,新日期(“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
自选。 初始建议的租约 ID。
返回
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
自选。 每个元素的数组具有唯一 ID 和访问策略的详细信息。
- 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
必填。 与软删除路径关联的删除 ID。
- options
- FileSystemUndeletePathOption
返回
Promise<FileSystemUndeletePathResponse>