このトピックでは、簡単なダウンロードを実行する方法について説明します。
例
オブジェクトをローカルデバイスまたはNSDataとしてダウンロードできます。
OSSGetObjectRequest * request = [OSSGetObjectRequest new];
// バケットの名前を指定します。 例: examplebucket.
request.bucketName = @ "examplebucket";
// オブジェクトのフルパスを指定します。 例: exampledir/exampleobject.txt。 オブジェクトのフルパスにバケット名を含めることはできません。
request.objectKey = @ "exampledir/exampleobject.txt";
// オプションのフィールドを設定します。
request.downloadProgress = ^(int64_t bytesWritten, int64_t totalBytesWritten, int64_t totalBytesExpectedToWrite) {
// ダウンロードするバイト数、ダウンロードするバイト数、およびダウンロードする合計バイト数を指定します。
NSLog(@ "% lld, % lld, % lld", bytesWritten, totalBytesWritten, totalBytesExpectedToWrite);
};
// request.range = [[OSSRange alloc] initWithStart:0 withEnd:99]; // bytes=0-99。 ダウンロード範囲がバイト0からバイト99までであることを指定します。
// request.downloadToFileURL = [NSURL fileURLWithPath:@ "<filepath>"]; // オブジェクトをファイルに直接ダウンロードする必要がある場合は、ファイルのパスを指定します。
OSSTask * getTask = [client getObject:request];
[getTask continueWithBlock:^ id(OSSTask * task) {
if (!task.error) {
NSLog(@ "オブジェクトのダウンロード成功!");
OSSGetObjectResult * getResult = task.result;
NSLog(@ "download result: % @", getResult.downloadedData);
} else {
NSLog(@ "オブジェクトのダウンロードに失敗、エラー: % @" 、task.error);
}
nilを返します。}];
// [getTask waitUntilFinished];
// [リクエストキャンセル];
参考資料
簡単なダウンロードを実行するために呼び出すことができるAPI操作の詳細については、「GetObject」をご参照ください。