Exclui um diretório. Somente buckets com namespace hierárquico habilitado suportam esta operação.
Observações de uso
-
Os diretórios aceitam dois métodos de exclusão:
Exclusão recursiva: exclua todos os objetos e subdiretórios do diretório.
Exclusão não recursiva: exclua o diretório somente se estiver vazio.
-
As permissões necessárias variam conforme o método de exclusão:
-
A exclusão recursiva exige a permissão DeleteObject no diretório e em todos os objetos e subdiretórios que ele contém.
Por exemplo, para excluir recursivamente desktop/osstest, é necessária a permissão DeleteObject no diretório desktop/osstest e em todo o seu conteúdo.
-
A exclusão não recursiva exige a permissão DeleteObject no diretório.
Por exemplo, para excluir desktop/dir, é necessária a permissão DeleteObject no diretório desktop/dir.
-
A exclusão recursiva pode falhar se houver solicitações de gravação simultâneas direcionadas ao diretório.
Estrutura da solicitação
POST /objectName?x-oss-delete HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Cabeçalhos da solicitação
|
Header |
Type |
Required |
Description |
|
x-oss-delete-recursive |
String |
No |
Defina se a exclusão do diretório será recursiva.
Valor padrão: false |
|
x-oss-delete-token |
String |
No |
Nome do objeto ou diretório a partir do qual a próxima exclusão começa. Válido apenas quando x-oss-delete-recursive está definido como true. Deixe este cabeçalho vazio na primeira solicitação DeleteDirectory. |
Esta operação de API também deve incluir cabeçalhos de solicitação comuns, como Host e Date. Para obter mais informações sobre os cabeçalhos de solicitação comuns, consulte Cabeçalhos de solicitação comuns.
Cabeçalhos da resposta
Os cabeçalhos de resposta desta operação de API contêm apenas cabeçalhos de resposta comuns. Para obter mais informações sobre os cabeçalhos de resposta comuns envolvidos nesta operação, consulte Cabeçalhos de resposta comuns.
Elementos da resposta
|
Elemento |
Tipo |
Descrição |
|
DeleteDirectoryResult |
Container |
Container do resultado da exclusão do diretório. Nós pai: nenhum |
|
DirectoryName |
String |
Nome do diretório excluído. Nós pai: DeleteDirectoryResult |
|
DeleteNumber |
String |
Quantidade de objetos e diretórios excluídos. Nós pai: DeleteDirectoryResult |
|
NextDeleteToken |
String |
Nome do próximo objeto ou diretório a partir do qual a exclusão continua. Nós pai: DeleteDirectoryResult |
Exemplos
-
Exclusão não recursiva
Exemplo de solicitação
POST /desktop/osstest/a?x-oss-delete HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Thu, 29 Apr 2021 05:21:12 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218eExemplo de resposta
HTTP/1.1 200 OK x-oss-request-id: 559CC9BDC755F95A64485981 Date: Thu, 29 Apr 2021 05:21:12 GMT Connection: keep-alive Server: AliyunOSS <DeleteDirectoryResult> <DirectoryName>desktop/osstest/a</DirectoryName> <DeleteNumber>1</DeleteNumber> </DeleteDirectoryResult> -
Exclusão recursiva
Exemplo de solicitação
POST /desktop/osstest/a?x-oss-delete HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Thu, 29 Apr 2021 05:21:12 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e x-oss-delete-recursive: trueExemplo de resposta
HTTP/1.1 200 OK x-oss-request-id: 559CC9BDC755F95A64485981 Date: Thu, 29 Apr 2021 05:21:12 GMT Connection: keep-alive Server: AliyunOSS <DeleteDirectoryResult> <DirectoryName>desktop/osstest/a</DirectoryName> <DeleteNumber>100</DeleteNumber> <NextDeleteToken>Cg9kZXNrdG9wL29zcy9hLzk-</NextDeleteToken> </DeleteDirectoryResult>
SDKs do OSS
Os seguintes SDKs do OSS suportam a operação DeleteDirectory:
Códigos de erro
|
Error code |
HTTP status code |
Description |
|
AccessDenied |
403 |
Possíveis causas:
|
|
NoSuchKey |
404 |
O diretório especificado não existe. |
|
FileAlreadyExists |
409 |
Possíveis causas:
|
|
InvalidArgument |
400 |
O formato do valor de x-oss-delete-token é inválido. |