アーカイブ、コールドアーカイブ、ディープコールドアーカイブの各オブジェクトは、読み取りの前に解凍する必要があります。このトピックでは、アーカイブ、コールドアーカイブ、ディープコールドアーカイブのオブジェクトを解凍する方法について説明します。
注意事項
このトピックのサンプルコードを実行する前に、カスタムドメイン名の使用や Security Token Service (STS) の利用などの方法で、OSSClient インスタンスを作成する必要があります。詳細については、「初期化」をご参照ください。
サンプルコード
次のコードは、バケット `examplebucket` 内のオブジェクト `exampleobject.txt` を解凍する例です。オブジェクト `exampleobject.txt` のストレージクラスは、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブです。
OSSRestoreObjectRequest *request = [OSSRestoreObjectRequest new];
// バケット名を指定します。例:examplebucket。
request.bucketName = @"examplebucket";
// オブジェクトの完全なパスを指定します。完全なパスにバケット名を含めないでください。例:exampleobject.txt。
request.objectKey = @"exampleobject.txt";
OSSTask *restoreObjectTask = [client restoreObject:request];
[restoreObjectTask continueWithBlock:^id _Nullable(OSSTask * _Nonnull task) {
if (!task.error) {
NSLog(@"オブジェクトの解凍に成功しました");
} else {
NSLog(@"オブジェクトの解凍に失敗しました。エラー: %@", task.error);
}
return nil;
}];
// 同期ブロッキングを実装して、タスクが完了するのを待ちます。
// [restoreObjectTask waitUntilFinished];関連ドキュメント
アーカイブオブジェクトを解凍するために呼び出し可能な API 操作の詳細については、「RestoreObject」をご参照ください。
OSSClient インスタンスを初期化する方法の詳細については、「初期化」をご参照ください。