Todos os produtos
Search
Central de documentação

Object Storage Service:Restaurar objetos (iOS SDK)

Última atualização: Jul 03, 2026

Objetos nas classes de armazenamento Archive, Cold Archive e Deep Cold Archive não estão acessíveis imediatamente. Restaure-os antes de lê-los. Este tópico descreve como restaurar esses objetos com o iOS SDK.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Uma instância do OSSClient. Para mais informações, consulte Inicialização.

  • Um objeto armazenado na classe de armazenamento Archive, Cold Archive ou Deep Cold Archive

  • A permissão oss:RestoreObject para o bucket

Código de exemplo

O código a seguir mostra como restaurar um objeto Archive, Cold Archive ou Deep Cold Archive chamado exampleobject.txt em um bucket chamado 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];

Importante: Enviar uma solicitação de restauração não torna o objeto acessível imediatamente. O processo de restauração ocorre de forma assíncrona e o tempo de conclusão varia conforme a classe de armazenamento.

Tratamento de erros

Erros comuns ao restaurar objetos:

Código de erro

Descrição

Solução

NoSuchKey

O objeto especificado não existe

Verifique a chave do objeto e o nome do bucket

OperationNotSupported

O objeto não permite restauração porque não pertence a uma classe de armazenamento arquivada

Confirme se a classe de armazenamento do objeto é Archive, Cold Archive ou Deep Cold Archive. Apenas objetos arquivados exigem restauração.

RestoreAlreadyInProgress

Já existe uma solicitação de restauração em andamento para este objeto

Aguarde a conclusão da restauração existente

Referências

  • Para a referência completa da API, consulte RestoreObject

  • Para obter informações sobre como inicializar uma instância do OSSClient, consulte Inicialização