Tous les produits
Search
Centre de documentation

Object Storage Service:DeleteDirectory

Dernière mise à jour :Aug 18, 2026

Supprime un répertoire. Seuls les buckets avec l'espace de noms hiérarchique activé prennent en charge cette opération.

Notes d'utilisation

  • Deux méthodes permettent de supprimer des répertoires :

    • Suppression récursive : supprime tous les objets et sous-répertoires du répertoire.

    • Suppression non récursive : supprime le répertoire uniquement s'il est vide.

  • Les autorisations requises dépendent de la méthode de suppression :

    • La suppression récursive nécessite l'autorisation DeleteObject sur le répertoire, ainsi que sur tous les objets et sous-répertoires qu'il contient.

      Par exemple, pour supprimer récursivement le répertoire desktop/osstest, vous devez disposer de l'autorisation DeleteObject sur ce répertoire et sur tout son contenu.

    • La suppression non récursive nécessite l'autorisation DeleteObject sur le répertoire.

      Par exemple, pour supprimer le répertoire desktop/dir, vous devez disposer de l'autorisation DeleteObject sur ce répertoire.

  • Des requêtes d'écriture simultanées ciblant le répertoire peuvent faire échouer une suppression récursive.

Structure de la requête

POST /objectName?x-oss-delete HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

En-têtes de requête

Header

Type

Required

Description

x-oss-delete-recursive

String

No

Indique si la suppression du répertoire doit être récursive.

  • Si vous ne spécifiez pas x-oss-delete-recursive ou si vous définissez x-oss-delete-recursive sur false, la suppression est non récursive. Vous ne pouvez supprimer que les répertoires vides.

  • Si vous définissez x-oss-delete-recursive sur true, la suppression est récursive. Le système supprime tous les objets et sous-répertoires du répertoire.

Valeur par défaut : false

x-oss-delete-token

String

No

Nom de l'objet ou du répertoire à partir duquel la prochaine suppression commence. Ce paramètre n'est valide que lorsque x-oss-delete-recursive est défini sur true.

Laissez cet en-tête vide lors de la première requête DeleteDirectory.

Cette opération API doit également inclure les en-têtes de requête communs tels que Host et Date. Pour plus d'informations, consultez En-têtes de requête communs.

En-têtes de réponse

Les en-têtes de réponse de cette opération API se limitent aux en-têtes de réponse communs. Pour plus d'informations, consultez En-têtes de réponse communs.

Éléments de réponse

Element

Type

Description

DeleteDirectoryResult

Container

Conteneur des résultats de la suppression du répertoire.

Nœuds parents : aucun

DirectoryName

String

Nom du répertoire supprimé.

Nœuds parents : DeleteDirectoryResult

DeleteNumber

String

Nombre d'objets et de répertoires supprimés.

Nœuds parents : DeleteDirectoryResult

NextDeleteToken

String

Nom du prochain objet ou répertoire à partir duquel la suppression reprend.

Nœuds parents : DeleteDirectoryResult

Exemples

  • Suppression non récursive

    Exemple de requête

    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

    Exemple de réponse

    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>
  • Suppression récursive

    Exemple de requête

    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: true

    Exemple de réponse

    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>

SDK OSS

Les SDK OSS suivants prennent en charge l'opération DeleteDirectory :

Codes d'erreur

Error code

HTTP status code

Description

AccessDenied

403

Causes possibles :

  • Vous ne disposez pas des autorisations nécessaires pour accéder au bucket spécifié.

  • Vous ne disposez pas des autorisations nécessaires pour supprimer le répertoire.

NoSuchKey

404

Le répertoire spécifié n'existe pas.

FileAlreadyExists

409

Causes possibles :

  • Le répertoire n'est pas vide (suppression non récursive).

  • Des requêtes d'écriture simultanées entrent en conflit avec la suppression récursive.

InvalidArgument

400

Le format de la valeur x-oss-delete-token n'est pas valide.