Tous les produits
Search
Centre de documentation

Object Storage Service:Restore objects (iOS SDK)

Dernière mise à jour :Aug 18, 2026

Les objets stockés dans les classes de stockage Archive, Cold Archive et Deep Cold Archive ne sont pas immédiatement accessibles. Vous devez les restaurer avant de pouvoir les lire. Cette rubrique explique comment restaurer ces objets à l'aide du SDK iOS.

Prérequis

Avant de commencer, assurez-vous d'avoir :

  • Une instance OSSClient. Pour plus d'informations, consultez la section Initialisation.

  • Un objet stocké dans une classe de stockage Archive, Cold Archive ou Deep Cold Archive

  • L'autorisation oss:RestoreObject pour le bucket

Exemple de code

Le code suivant montre comment restaurer un objet nommé exampleobject.txt, stocké dans une classe Archive, Cold Archive ou Deep Cold Archive, depuis un bucket nommé examplebucket :

OSSRestoreObjectRequest *request = [OSSRestoreObjectRequest new];
// Bucket containing the archived object
request.bucketName = @"examplebucket";
// Full path of the object (do not include the bucket name)
request.objectKey = @"exampleobject.txt";

OSSTask *restoreObjectTask = [client restoreObject:request];
[restoreObjectTask continueWithBlock:^id _Nullable(OSSTask * _Nonnull task) {
    if (!task.error) {
        NSLog(@"Restore request submitted successfully");
        // Note: The object is not immediately accessible.
        // Check restoration status before attempting to read.
    } else {
        NSLog(@"Restore request failed: %@", task.error);
        // Handle specific errors (see Error handling section)
    }
    return nil;
}];
// Use synchronous blocking if you need to wait for request submission to complete
// Not recommended for UI thread as it blocks execution
// [restoreObjectTask waitUntilFinished];

Important : L'envoi d'une demande de restauration ne rend pas l'objet immédiatement accessible. Le processus de restauration s'exécute de manière asynchrone et sa durée dépend de la classe de stockage.

Gestion des erreurs

Erreurs courantes lors de la restauration d'objets :

Code d'erreur Description Solution
NoSuchKey L'objet spécifié n'existe pas Vérifiez la clé de l'objet et le nom du bucket
OperationNotSupported L'objet ne prend pas en charge la restauration car il n'appartient pas à une classe de stockage archivée Vérifiez que la classe de stockage de l'objet est Archive, Cold Archive ou Deep Cold Archive. Seuls les objets archivés nécessitent une restauration.
RestoreAlreadyInProgress Une demande de restauration pour cet objet est déjà en cours Attendez que la restauration existante soit terminée

Références

  • Pour la référence API complète, consultez la section RestoreObject

  • Pour plus d'informations sur l'initialisation d'une instance OSSClient, consultez la section Initialisation