ファイルの削除 |ディレクトリの削除
ファイルまたはディレクトリを削除します。 この操作では、条件付き HTTP 要求がサポートされます。 詳細については、「Blob Service 操作の条件付きヘッダーの指定」を参照してください。 注: 'Path - Delete' 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 Storage アカウント名。
|
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
|
省略可能で、アカウントに対して階層型名前空間が有効であり、リソースが "recursive" クエリ パラメーターが "true" に設定されたディレクトリである場合にのみ有効です。 再帰的なディレクトリ削除の場合、使用される承認メカニズムが ACL で、呼び出し元がスーパー ユーザー以外の場合、各呼び出しで削除できるパスの数は制限されます。既定のタイムアウトは 30 秒であるためです。 "ページ分割された" クエリ パラメーターが "true" に設定されている場合、上記の制限に達した場合、応答ヘッダーに "x-ms-continuation" が含まれる可能性があります。 subsequnt 要求で "x-ms-continuation" を送信するときに、"paginated" および "recursive" クエリ パラメーターを "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 Bad Request、ContentLengthMustBeZero、"The Content-Length request header must be zero"
- 400 Bad Request、InvalidAuthenticationInfo、"認証情報が正しい形式で指定されていません。 Authorization ヘッダーの値を確認してください。
- 400 Bad Request、InvalidFlushPosition、"アップロードされたデータが連続していないか、位置クエリ パラメーターの値が、アップロードされたデータを追加した後のファイルの長さと等しくありません。"
- 400 Bad Request、InvalidHeaderValue、"いずれかの HTTP ヘッダーの値が正しい形式ではありません。"
- 400 Bad Request、InvalidHttpVerb、"指定された HTTP 動詞は無効です。サーバーによって認識されません。"
- 400 無効な要求、InvalidInput、"要求入力の 1 つが無効です。"
- 400 Bad Request、InvalidPropertyName、"A property name cannot be empty."
- 400 Bad Request、InvalidPropertyName、"プロパティ名に無効な文字が含まれています。"
- 400 Bad Request、InvalidQueryParameterValue、"要求 URI で指定されたクエリ パラメーターの値が無効です。"
- 400 Bad Request、InvalidResourceName、"指定されたリソース名に無効な文字が含まれています。"
- 400 無効な要求、InvalidSourceUri、"ソース URI が無効です。"
- 400 無効な要求、InvalidUri、"要求 URI が無効です。"
- 400 Bad Request、MissingRequiredHeader、"この要求に必須の HTTP ヘッダーが指定されていません。"
- 400 Bad Request、MissingRequiredQueryParameter、"この要求に必須のクエリ パラメーターが指定されていません。"
- 400 Bad Request、MultipleConditionHeadersNotSupported、"複数の条件ヘッダーはサポートされていません。"
- 400 Bad Request、OutOfRangeInput、"要求入力の 1 つが範囲外です。"
- 400 Bad Request、OutOfRangeQueryParameterValue、"要求 URI で指定されたクエリ パラメーターの 1 つが許容範囲外です。"
- 400 Bad Request、UnsupportedHeader、"要求で指定されたヘッダーの 1 つがサポートされていません。"
- 400 無効な要求、UnsupportedQueryParameter、"要求 URI で指定されたクエリ パラメーターの 1 つがサポートされていません。"
- 400 無効な要求、UnsupportedRestVersion、"指定された Rest バージョンはサポートされていません。"
- 403 Forbidden、AccountIsDisabled、"指定されたアカウントが無効になっています。"
- 403 Forbidden、AuthorizationFailure、"この要求は、この操作を実行する権限がありません。"
- 403 Forbidden、InsufficientAccountPermissions、"アクセスされているアカウントには、この操作を実行するための十分なアクセス許可がありません。"
- 404 Not Found,FilesystemNotFound, "The specified filesystem does not exist." (指定されたファイルシステムが存在しません。)
- 404 Not Found、PathNotFound、"指定したパスが存在しません。"
- 404 Not Found,RenameDestinationParentPathNotFound, "The parent directory of the destination path does not exist."
- 404 Not Found、ResourceNotFound、"指定されたリソースが存在しません。"
- 404 Not Found、SourcePathNotFound、"名前変更操作のソース パスが存在しません。"
- 405 メソッド Not Allowed、UnsupportedHttpVerb、"リソースは指定された HTTP 動詞をサポートしていません。"
- 409 Conflict、DestinationPathIsBeingDeleted、"指定された宛先パスは削除対象としてマークされています。"
- 409 Conflict、DirectoryNotEmpty、"空でないディレクトリを削除するには、再帰クエリ パラメーター値が true である必要があります。"
- 409 Conflict、FilesystemAlreadyExists、"指定されたファイルシステムは既に存在します。"
- 409 競合、FilesystemBeingDeleted、"指定されたファイルシステムが削除されています。"
- 409 Conflict、InvalidDestinationPath、"指定されたパス、またはパスの要素が存在し、そのリソースの種類がこの操作に対して無効です。"* 409 Conflict、InvalidFlushOperation、"リソースは Blob Service API によって作成または変更され、Data Lake Storage Service API によって書き込むことができません。"
- 409 Conflict、InvalidRenameSourcePath、"ソース ディレクトリをコピー先ディレクトリと同じにすることも、コピー先をソース ディレクトリのサブディレクトリにすることもできません。"
- 409 Conflict、InvalidSourceOrDestinationResourceType、"ソースとターゲットのリソースの種類は同じである必要があります。"
- 409 Conflict、LeaseAlreadyPresent、"既にリースが存在しています。"
- 409 Conflict, LeaseIdMismatchWithLeaseOperation, "指定されたリース ID が、指定したリース操作を持つリソースのリース ID と一致しませんでした。"
- 409 Conflict、LeaseIsAlreadyBroken、"リースは既に破損しており、再び破損することはできません。"
- 409 Conflict、LeaseIsBreakingAndCannotBeAcquired、"リース ID は一致しましたが、リースは現在中断状態にあり、破損するまで取得できません。"
- 409 Conflict、LeaseIsBreakingAndCannotBeChanged、"リース ID は一致しましたが、リースは現在中断状態にあり、変更できません。"
- 409 Conflict、LeaseIsBrokenAndCannotBeRenewed、"リース ID が一致しましたが、リースが明示的に破損しており、更新できません。"
- 409 Conflict、LeaseNameMismatch、"指定されたリース名が既存のリース名と一致しませんでした。"
- 409 Conflict, LeaseNotPresentWithLeaseOperation, "リース ID が指定されたリース操作と共に存在しません。"
- 409 Conflict、PathAlreadyExists、"指定したパスは既に存在します。"
- 409 Conflict、PathConflict、"指定されたパス、またはパスの要素が存在し、そのリソースの種類がこの操作に対して無効です。"
- 409 競合、SourcePathIsBeingDeleted、"指定されたソース パスは削除対象としてマークされています。"
- 409 Conflict、ResourceTypeMismatch、"要求で指定されたリソースの種類がリソースの種類と一致しません。"
- 412 前提条件の失敗、ConditionNotMet、"HTTP 条件付きヘッダーを使用して指定された条件が満たされていません。"
- 412 前提条件に失敗しました。LeaseIdMismatch、"指定されたリース ID がリソースのリース ID と一致しませんでした。"
- 412 前提条件に失敗しました。LeaseIdMissing。"現在、リソースにリースがあり、要求でリース ID が指定されていません。
- 412 前提条件に失敗しました。LeaseNotPresent、"現在、リソースにリースはありません。"
- 412 前提条件に失敗しました。LeaseLost、"リース ID が指定されましたが、リソースのリースの有効期限が切れています。"
- 412 Precondition Failed、SourceConditionNotMet、"HTTP 条件付きヘッダーを使用して指定されたソース条件が満たされていません。"
- 413 要求エンティティが大きすぎる、RequestBodyTooLarge、"要求本文が大きすぎて、許容される上限を超えています。"
- 416 要求された範囲が満たされていません。InvalidRange、"指定された範囲は、リソースの現在のサイズに対して無効です。"
- 500 内部サーバー エラー、InternalError、"サーバーで内部エラーが発生しました。 要求を再試行してください。
- 500 内部サーバー エラー、OperationTimedOut、"許可された時間内に操作を完了できませんでした。"
- 503 サービス利用不可、ServerBusy、"エグレスがアカウント制限を超えています。"
- 503 サービス利用不可、ServerBusy、"イングレスがアカウントの制限を超えています。"
- 503 サービス利用不可、ServerBusy、"1 秒あたりの操作数がアカウントの制限を超えています。"
- 503 サービス利用不可、ServerBusy、"サーバーは現在要求を受信できません。 要求を再試行してください。
ヘッダー
- x-ms-request-id: string
- x-ms-version: string
|
定義
DataLakeStorageError
Object
名前 |
型 |
説明 |
error
|
Error
|
サービス エラー応答オブジェクト。
|
Error
Object
サービス エラー応答オブジェクト。
名前 |
型 |
説明 |
code
|
string
|
サービス エラー コード。
|
message
|
string
|
サービス エラー メッセージ。
|