ShareClient class
ShareClient 表示 Azure 存储共享的 URL,允许你作其目录和文件。
- 扩展
-
StorageClient
构造函数
Share |
创建 ShareClient 的实例。 |
Share |
创建 ShareClient 的实例。 |
Share |
属性
name | 共享的名称 |
root |
获取此共享的根目录的目录客户端。 请注意,根目录始终存在且无法删除。 根目录的新 ShareDirectoryClient 对象。 |
继承属性
account |
|
url | URL 字符串值。 |
方法
构造函数详细信息
ShareClient(string, Credential_2 | TokenCredential, ShareClientOptions)
创建 ShareClient 的实例。
new ShareClient(url: string, credential?: Credential_2 | TokenCredential, options?: ShareClientOptions)
参数
- url
-
string
指向 Azure 存储文件共享的 URL 字符串,例如“https://myaccount.file.core.windows.net/share"。 如果使用 AnonymousCredential(如“https://myaccount.file.core.windows.net/share?sasString"),则可以追加 SAS。
- credential
例如 AnonymousCredential 或 StorageSharedKeyCredential。 如果未指定,则使用 AnonymousCredential。
- options
- ShareClientOptions
自选。 用于配置 HTTP 管道的选项。
ShareClient(string, Pipeline, ShareClientConfig)
创建 ShareClient 的实例。
new ShareClient(url: string, pipeline: Pipeline, options?: ShareClientConfig)
参数
- url
-
string
指向 Azure 存储文件共享的 URL 字符串,例如“https://myaccount.file.core.windows.net/share"。 如果使用 AnonymousCredential(如“https://myaccount.file.core.windows.net/share?sasString"),则可以追加 SAS。
- pipeline
- Pipeline
调用 newPipeline()以创建默认管道,或提供自定义管道。
- options
- ShareClientConfig
ShareClient(string, string, ShareClientOptions)
new ShareClient(connectionString: string, name: string, options?: ShareClientOptions)
参数
- connectionString
-
string
帐户连接字符串或 Azure 存储帐户的 SAS 连接字符串。
[ 注意 - 帐户连接字符串只能在NODE.JS运行时使用。 ] 帐户连接字符串示例 -
DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
SAS 连接字符串示例 - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString
- name
-
string
共享名称。
- options
- ShareClientOptions
自选。 用于配置 HTTP 管道的选项。
属性详细信息
name
共享的名称
string name
属性值
string
rootDirectoryClient
获取此共享的根目录的目录客户端。 请注意,根目录始终存在且无法删除。
根目录的新 ShareDirectoryClient 对象。
ShareDirectoryClient rootDirectoryClient
属性值
继承属性详细信息
accountName
accountName: string
属性值
string
继承自 StorageClient.accountName
url
URL 字符串值。
url: string
属性值
string
继承自 StorageClient.url
方法详细信息
create(ShareCreateOptions)
在指定的帐户下创建新共享。 如果已存在具有相同名称的共享,则作将失败。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/create-share
function create(options?: ShareCreateOptions): Promise<ShareCreateResponse>
参数
- options
- ShareCreateOptions
用于共享创建作的选项。
返回
Promise<ShareCreateResponse>
共享创建作的响应数据。
createDirectory(string, DirectoryCreateOptions)
在此共享下创建新的子目录。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/create-directory
function createDirectory(directoryName: string, options?: DirectoryCreateOptions): Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
参数
- directoryName
-
string
- options
- DirectoryCreateOptions
目录创建作的选项。
返回
Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>
目录创建响应数据和相应的目录客户端。
createFile(string, number, FileCreateOptions)
创建新文件或替换此共享的根目录下的文件。 请注意,它仅初始化没有内容的文件。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/create-file
function createFile(fileName: string, size: number, options?: FileCreateOptions): Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
参数
- fileName
-
string
- size
-
number
指定文件的最大大小(以字节为单位),最大为 4 TB。
- options
- FileCreateOptions
文件创建作的选项。
返回
Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>
文件创建响应数据和相应的文件客户端。
createIfNotExists(ShareCreateOptions)
在指定的帐户下创建新共享。 如果共享已存在同名,则不会更改。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/create-share
function createIfNotExists(options?: ShareCreateOptions): Promise<ShareCreateIfNotExistsResponse>
参数
- options
- ShareCreateOptions
返回
Promise<ShareCreateIfNotExistsResponse>
createPermission(string | SharePermission, ShareCreatePermissionOptions)
在共享级别创建文件权限(安全描述符)。 创建的安全描述符可用于共享中的文件/目录。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/create-permission
function createPermission(filePermission: string | SharePermission, options?: ShareCreatePermissionOptions): Promise<ShareCreatePermissionResponse>
参数
- filePermission
-
string | SharePermission
SDDL 中所述的文件权限
- options
- ShareCreatePermissionOptions
用于共享创建权限作的选项。
返回
Promise<ShareCreatePermissionResponse>
createSnapshot(ShareCreateSnapshotOptions)
创建共享的只读快照。
function createSnapshot(options?: ShareCreateSnapshotOptions): Promise<ShareCreateSnapshotResponse>
参数
- options
- ShareCreateSnapshotOptions
用于共享创建快照作的选项。
返回
Promise<ShareCreateSnapshotResponse>
共享创建快照作的响应数据。
delete(ShareDeleteMethodOptions)
标记要删除的指定共享。 共享及其中包含的任何目录或文件稍后将在垃圾回收期间删除。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/delete-share
function delete(options?: ShareDeleteMethodOptions): Promise<ShareDeleteResponse>
参数
- options
- ShareDeleteMethodOptions
用于共享删除作的选项。
返回
Promise<ShareDeleteResponse>
共享删除作的响应数据。
deleteDirectory(string, DirectoryDeleteOptions)
删除此共享下指定的空子目录。 请注意,目录必须为空,然后才能将其删除。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/delete-directory
function deleteDirectory(directoryName: string, options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>
参数
- directoryName
-
string
- options
- DirectoryDeleteOptions
目录删除作的选项。
返回
Promise<DirectoryDeleteResponse>
目录删除响应数据。
deleteFile(string, FileDeleteOptions)
从存储帐户中删除此共享的根目录下的文件。 成功删除文件时,会立即从存储帐户的索引中删除该文件,并且客户端不再可访问该文件。 在垃圾回收期间,文件的数据稍后会从服务中删除。
如果文件在 SMB 客户端上打开,则删除文件将失败,状态代码为 409(冲突)和错误代码 SharingViolation
。
共享快照不支持删除文件,这是共享的只读副本。 尝试对共享快照执行此作将失败,但 400 (InvalidQueryParameterValue
)
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/delete-file2
function deleteFile(fileName: string, options?: FileDeleteOptions): Promise<FileDeleteResponse>
参数
- fileName
-
string
- options
- FileDeleteOptions
文件删除作的选项。
返回
Promise<FileDeleteResponse>
承诺文件删除响应数据。
deleteIfExists(ShareDeleteMethodOptions)
标记指定的共享以供删除(如果存在)。 共享及其中包含的任何目录或文件稍后将在垃圾回收期间删除。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/delete-share
function deleteIfExists(options?: ShareDeleteMethodOptions): Promise<ShareDeleteIfExistsResponse>
参数
- options
- ShareDeleteMethodOptions
返回
Promise<ShareDeleteIfExistsResponse>
exists(ShareExistsOptions)
如果此客户端表示的 Azrue 共享资源存在,则返回 true;否则为 false。
注意:请谨慎使用此函数,因为现有共享可能被其他客户端或应用程序删除。 反之亦然,此函数完成后,其他客户端或应用程序可能会添加新共享。
function exists(options?: ShareExistsOptions): Promise<boolean>
参数
- options
- ShareExistsOptions
“存在”作的选项。
返回
Promise<boolean>
generateSasStringToSign(ShareGenerateSasUrlOptions)
仅适用于使用共享密钥凭据构造的 ShareClient。
根据传入的客户端属性和参数,生成用于为服务共享访问签名 (SAS) URI 签名的字符串。 SAS 由客户端的共享密钥凭据签名。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateSasStringToSign(options: ShareGenerateSasUrlOptions): string
参数
- options
- ShareGenerateSasUrlOptions
可选参数。
返回
string
由此客户端表示的资源的 URI 组成的 SAS URI,后跟生成的 SAS 令牌。
generateSasUrl(ShareGenerateSasUrlOptions)
仅适用于使用共享密钥凭据构造的 ShareClient。
基于传入的客户端属性和参数生成服务共享访问签名 (SAS) URI。 SAS 由客户端的共享密钥凭据签名。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
function generateSasUrl(options: ShareGenerateSasUrlOptions): string
参数
- options
- ShareGenerateSasUrlOptions
可选参数。
返回
string
由此客户端表示的资源的 URI 组成的 SAS URI,后跟生成的 SAS 令牌。
getAccessPolicy(ShareGetAccessPolicyOptions)
获取指定共享的权限。 权限指示是否可以公开访问共享数据。
警告:分析起始字符串和过期字符串时,JavaScript 日期可能会丢失精度。 例如,新日期(“2018-12-31T03:44:23.8827891Z”)将获取“2018-12-31T03:44:23.882Z”。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/get-share-acl
function getAccessPolicy(options?: ShareGetAccessPolicyOptions): Promise<ShareGetAccessPolicyResponse>
参数
- options
- ShareGetAccessPolicyOptions
返回
Promise<ShareGetAccessPolicyResponse>
共享获取访问策略作的响应数据。
getDirectoryClient(string)
创建 ShareDirectoryClient 对象。
function getDirectoryClient(directoryName: string): ShareDirectoryClient
参数
- directoryName
-
string
目录名称
返回
给定目录名称的 ShareDirectoryClient 对象。
getPermission(string, ShareGetPermissionOptions)
获取给定文件权限密钥的安全描述符定义语言(SDDL),该密钥指示安全描述符。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/get-permission
function getPermission(filePermissionKey: string, options?: ShareGetPermissionOptions): Promise<ShareGetPermissionResponse>
参数
- filePermissionKey
-
string
指示权限的安全描述符的文件权限密钥。
- options
- ShareGetPermissionOptions
用于共享创建权限作的选项。
返回
Promise<ShareGetPermissionResponse>
getProperties(ShareGetPropertiesOptions)
返回指定共享的所有用户定义的元数据和系统属性。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/get-share-properties
警告:响应中返回的 metadata
对象将具有小写形式的键,即使它们最初包含大写字符也是如此。 这不同于使用 listShares
选项(将保留其原始大小写)ShareServiceClientincludeMetadata
方法返回的元数据键。
function getProperties(options?: ShareGetPropertiesOptions): Promise<ShareGetPropertiesResponse>
参数
- options
- ShareGetPropertiesOptions
返回
Promise<ShareGetPropertiesResponse>
“共享获取属性”作的响应数据。
getShareLeaseClient(string)
获取管理文件租约的 ShareLeaseClient。
function getShareLeaseClient(proposeLeaseId?: string): ShareLeaseClient
参数
- proposeLeaseId
-
string
初始建议的租约 ID。
返回
用于管理文件租约的新 ShareLeaseClient 对象。
getStatistics(ShareGetStatisticsOptions)
检索与共享相关的统计信息。
function getStatistics(options?: ShareGetStatisticsOptions): Promise<ShareGetStatisticsResponse>
参数
- options
- ShareGetStatisticsOptions
返回
Promise<ShareGetStatisticsResponse>
共享获取统计信息作的响应数据。
setAccessPolicy(SignedIdentifier[], ShareSetAccessPolicyOptions)
设置指定共享的权限。 权限指示是否可以公开访问共享中的目录或文件。
为共享设置权限时,将替换现有权限。 如果未提供 shareAcl,将删除现有的共享 ACL。
在共享上建立存储访问策略时,最长可能需要 30 秒才能生效。 在此时间间隔内,与存储访问策略关联的共享访问签名将失败并显示状态代码 403(禁止访问),直到访问策略变为活动状态。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/set-share-acl
function setAccessPolicy(shareAcl?: SignedIdentifier[], options?: ShareSetAccessPolicyOptions): Promise<ShareSetAccessPolicyResponse>
参数
- shareAcl
签名标识符的数组,每个标识符都具有唯一 ID 和访问策略的详细信息。
- options
- ShareSetAccessPolicyOptions
返回
Promise<ShareSetAccessPolicyResponse>
共享集访问策略作的响应数据。
setMetadata(Metadata, ShareSetMetadataOptions)
为指定的共享设置一个或多个用户定义的名称值对。
如果未提供任何选项,或者未在选项参数中定义任何元数据,则删除共享元数据。
请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/set-share-metadata
function setMetadata(metadata?: Metadata, options?: ShareSetMetadataOptions): Promise<ShareSetMetadataResponse>
参数
- metadata
- Metadata
如果未提供任何元数据,将删除所有现有目录元数据。
- options
- ShareSetMetadataOptions
返回
Promise<ShareSetMetadataResponse>
共享集元数据作的响应数据。
setProperties(ShareSetPropertiesOptions)
设置共享的属性。
function setProperties(options?: ShareSetPropertiesOptions): Promise<ShareSetPropertiesResponse>
参数
- options
- ShareSetPropertiesOptions
返回
Promise<ShareSetPropertiesResponse>
共享集属性作的响应数据。
setQuota(number, ShareSetQuotaOptions)
设置指定共享的配额。
function setQuota(quotaInGB: number, options?: ShareSetQuotaOptions): Promise<ShareSetQuotaResponse>
参数
- quotaInGB
-
number
指定共享的最大大小(以 GB 为单位)
- options
- ShareSetQuotaOptions
返回
Promise<ShareSetQuotaResponse>
共享获取配额作的响应数据。
withSnapshot(string)
创建与源相同的新 ShareClient 对象,但具有指定的快照时间戳。 提供“”将删除快照,并将 URL 返回到基本共享。
function withSnapshot(snapshot: string): ShareClient
参数
- snapshot
-
string
快照时间戳。
返回
与源相同的新 ShareClient 对象,但具有指定的快照时间戳