你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Path - Delete

删除文件 |删除目录
删除文件或目录。 此作支持条件 HTTP 请求。 有关详细信息,请参阅 为 Blob 服务作指定条件标头。 注意:“路径 - 删除”API 不支持删除 Blob 版本。 有关使用版本删除 blob 的详细信息,请参阅 删除 Blob

DELETE https://{accountName}.{dnsSuffix}/{filesystem}/{path}
DELETE https://{accountName}.{dnsSuffix}/{filesystem}/{path}?recursive={recursive}&continuation={continuation}&paginated={paginated}&timeout={timeout}

URI 参数

名称 必需 类型 说明
accountName
path True

string

Azure 存储帐户名称。

dnsSuffix
path True

string

Azure Data Lake Storage 终结点的 DNS 后缀。

filesystem
path True

string

minLength: 3
maxLength: 63
pattern: ^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$

文件系统标识符。

path
path True

string

文件或目录路径。

continuation
query

string

可选。 删除目录时,通过每个调用删除的路径数受到限制。 如果要删除的路径数超过此限制,则会在此响应标头中返回继续标记。 在响应中返回继续标记时,必须在后续调用删除作中指定该标记才能继续删除目录。

paginated
query

boolean

仅当为帐户启用分层命名空间并且资源是一个目录时,该目录的“递归”查询参数设置为“true”时,才可选且有效。 对于递归目录删除,当使用的授权机制为 ACL 且调用方是非超级用户时,可以使用每个调用删除的路径数受到限制,因为默认超时为 30 秒。 当“分页”查询参数设置为“true”时,如果达到上述限制,响应标头可能包含“x-ms-continuation”。 在子序列请求中发送“x-ms-continuation”时,“分页”和“递归”查询参数应设置为“true”。 当响应不包含任何“x-ms-continuation”时,递归目录删除将成功。 实际目录删除仅在上次调用中发生,上述作涉及 ACL 检查目录下的文件和目录的服务器,以递归方式删除。

recursive
query

boolean

仅当资源是目录时才必需且有效。 如果为“true”,将删除目录下的所有路径。 如果“false”且目录为非空,则会发生错误。

timeout
query

integer (int32)

minimum: 1

可选操作超时值(以秒为单位)。 句点从服务接收请求时开始。 如果超时值在操作完成之前运行,则操作将失败。

请求头

名称 必需 类型 说明
x-ms-lease-id

string

pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

如果存在活动租约,则必须指定租约 ID。

If-Match

string

可选。 ETag 值。 仅当资源的 ETag 与指定的值匹配时,才指定此标头来执行该操作。 必须在引号中指定 ETag。

If-None-Match

string

可选。 ETag 值或特殊通配符 (“*”) 值。 仅当资源的 ETag 与指定的值不匹配时,才指定此标头来执行该操作。 必须在引号中指定 ETag。

If-Modified-Since

string

可选。 日期和时间值。 仅当资源自指定日期和时间以来已修改时,才指定此标头以执行该操作。

If-Unmodified-Since

string

可选。 日期和时间值。 仅当资源自指定日期和时间以来尚未修改时,才指定此标头来执行该操作。

x-ms-client-request-id

string

pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

分析日志中记录的 UUID,用于故障排除和关联。

x-ms-date

string

指定请求的协调世界时(UTC)。 使用共享密钥授权时,这是必需的。

x-ms-version

string

指定用于处理请求的 REST 协议的版本。 使用共享密钥授权时,这是必需的。

响应

名称 类型 说明
200 OK

文件已删除。

标头

  • Date: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-continuation: string
202 Accepted

仅当为帐户启用分层命名空间时,才接受删除请求。

标头

  • Date: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-continuation: string
Other Status Codes

DataLakeStorageError

发生错误。 下面列出了可能的 HTTP 状态、代码和消息字符串:

  • 400 错误请求,ContentLengthMustBeZero,“Content-Length 请求标头必须为零。
  • 400 错误请求,InvalidAuthenticationInfo,“身份验证信息的格式不正确。 检查 Authorization 标头的值。”
  • 400 错误请求,InvalidFlushPosition,“上传的数据不是连续的,或者位置查询参数值不等于追加上传的数据后文件长度。
  • 400 错误请求,InvalidHeaderValue,“其中一个 HTTP 标头的值的格式不正确。
  • 400 错误请求,InvalidHttpVerb,“指定的 HTTP 谓词无效 - 服务器无法识别它。
  • 400 错误请求,InvalidInput,“请求输入之一无效。
  • 400 错误请求,InvalidPropertyName,“属性名称不能为空。
  • 400 错误请求,InvalidPropertyName,“属性名称包含无效字符。
  • 400 错误请求,InvalidQueryParameterValue,“请求 URI 中指定的某个查询参数的值无效。
  • 400 错误请求,InvalidResourceName,“指定的资源名称包含无效字符。
  • 400 错误的请求,InvalidSourceUri,“源 URI 无效”。
  • 400 错误的请求,InvalidUri,“请求 URI 无效。
  • 400 错误请求,MissingRequiredHeader,“未指定此请求必需的 HTTP 标头。
  • 400 错误请求,MissingRequiredQueryParameter,“未指定此请求必需的查询参数。
  • 400 错误请求,MultipleConditionHeadersNotSupported,“不支持多个条件标头。
  • 400 错误请求,OutOfRangeInput,“请求输入之一超出范围。
  • 400 错误的请求,OutOfRangeQueryParameterValue,“请求 URI 中指定的查询参数之一超出了允许的范围。
  • 400 错误请求,UnsupportedHeader,“不支持请求中指定的标头之一。
  • 400 错误请求,UnsupportedQueryParameter,“不支持在请求 URI 中指定的查询参数之一。
  • 400 错误请求,UnsupportedRestVersion,“指定的 Rest 版本不受支持”。
  • 403 禁止,AccountIsDisabled,“指定的帐户已禁用。
  • 403 禁止,AuthorizationFailure,“此请求无权执行此操作。
  • 403 禁止,InsufficientAccountPermissions,“正在访问的帐户没有足够的权限来执行此操作。
  • 404 找不到,FilesystemNotFound,“指定的文件系统不存在。
  • 404 未找到,PathNotFound,“指定的路径不存在”。
  • 404 找不到,RenameDestinationParentPathNotFound,“目标路径的父目录不存在。
  • 404 找不到 ResourceNotFound,“指定的资源不存在”。
  • 404 未找到,SourcePathNotFound,“重命名操作的源路径不存在。
  • 405 方法不允许,UnsupportedHttpVerb,“资源不支持指定的 HTTP 谓词。
  • 409 冲突,DestinationPathIsBeingDeleted,“指定的目标路径标记为要删除。
  • 409 冲突,DirectoryNotEmpty,“递归查询参数值必须是 true 才能删除非空目录。
  • 409 冲突,FilesystemAlreadyExists,“指定的文件系统已存在。
  • 409 冲突,FilesystemBeingDeleted,“正在删除指定的文件系统。
  • 409 冲突,InvalidDestinationPath,“指定的路径或路径的元素存在,其资源类型对于此操作无效。* 409 冲突,InvalidFlushOperation,“资源是由 Blob 服务 API 创建或修改的,不能由 Data Lake Storage Service API 写入。
  • 409 冲突,InvalidRenameSourcePath,“源目录不能与目标目录相同,目标也不能是源目录的子目录。
  • 409 冲突,InvalidSourceOrDestinationResourceType,“源和目标资源类型必须相同。
  • 409 冲突,LeaseAlreadyPresent,“已经有租约存在。
  • 409 冲突,LeaseIdMismatchWithLeaseOperation,“指定的租约 ID 与具有指定租约操作的资源的租约 ID 不匹配。
  • 409 冲突,LeaseIsAlreadyBroken,“租约已经损坏,不能再次损坏。
  • 409 冲突,LeaseIsBreakingAndCannotBeAcquired,“租约 ID 匹配,但租约当前处于中断状态,在中断之前无法获取。
  • 409 冲突,LeaseIsBreakingAndCannotBeChanged,“租约 ID 匹配,但租约当前处于中断状态,无法更改。
  • 409 冲突,LeaseIsBrokenAndCannotBeRenewed,“租约 ID 匹配,但租约已显式断开,无法续订。
  • 409 冲突,LeaseNameMismatch,“指定的租约名称与现有租约名称不匹配。
  • 409 冲突,LeaseNotPresentWithLeaseOperation,“租约 ID 不存在于指定的租约操作中。
  • 409 冲突,PathAlreadyExists,“指定的路径已存在。
  • 409 冲突,PathConflict,“指定的路径或路径的元素存在,其资源类型对于此操作无效。
  • 409 冲突,SourcePathIsBeingDeleted,“指定的源路径标记为要删除。
  • 409 冲突,ResourceTypeMismatch,“请求中指定的资源类型与资源的类型不匹配。
  • 412 前置条件失败,ConditionNotMet,“未满足使用 HTTP 条件标头指定的条件。
  • 412 前置条件失败,LeaseIdMismatch,“指定的租约 ID 与资源的租约 ID 不匹配。
  • 412 前置条件失败,LeaseIdMissing,“资源当前存在租约,请求中未指定租约 ID。
  • 412 前置条件失败,LeaseNotPresent,“当前没有资源租约。
  • 412 先决条件失败,LeaseLost,“已指定租约 ID,但资源的租约已过期。
  • 412 前置条件失败,SourceConditionNotMet,“未满足使用 HTTP 条件标头指定的源条件。
  • 413 请求实体太大,RequestBodyTooLarge,“请求正文太大,超过允许的最大限制。
  • 416 请求的范围不能满足,InvalidRange,“指定的范围对于资源的当前大小无效。
  • 500 内部服务器错误,InternalError,“服务器遇到内部错误。 请重试请求。
  • 500 内部服务器错误 OperationTimedOut,“操作无法在允许的时间内完成。
  • 503 服务不可用,ServerBusy,“出口超出帐户限制。
  • 503 服务不可用,ServerBusy,“入口超出帐户限制。
  • 503 服务不可用,ServerBusy,“每秒操作数超过帐户限制。
  • 503 服务不可用,ServerBusy,“服务器当前无法接收请求。 请重试请求。”

标头

  • x-ms-request-id: string
  • x-ms-version: string

定义

名称 说明
DataLakeStorageError
Error

服务错误响应对象。

DataLakeStorageError

名称 类型 说明
error

Error

服务错误响应对象。

Error

服务错误响应对象。

名称 类型 说明
code

string

服务错误代码。

message

string

服务错误消息。