Tautan simbolik menyediakan cara praktis untuk mengakses objek yang sering digunakan dalam sebuah bucket. Setelah membuat tautan simbolik, Anda dapat menggunakannya seperti shortcut Windows untuk mengakses objek target.
Catatan penggunaan
Sebelum menggunakan contoh dalam topik ini, Anda harus membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS). Untuk informasi selengkapnya, lihat Inisialisasi (iOS SDK).
Buat tautan simbolik
Kode berikut menunjukkan contoh pembuatan tautan simbolik bernama examplesymlink yang mengarah ke objek exampleobject.txt di bucket examplebucket.
OSSPutSymlinkRequest *request = [OSSPutSymlinkRequest new];
// Tentukan nama bucket. Contoh: examplebucket.
request.bucketName = @"examplebucket";
// Tentukan nama tautan simbolik.
request.objectKey = @"examplesymlink";
// Tentukan path lengkap objek yang ingin ditunjuk oleh tautan simbolik. Path lengkap tidak boleh mengandung nama bucket.
request.targetObjectName = @"exampleobject.txt";
OSSTask *putSymlinkTask = [client putSymlink:request];
[putSymlinkTask continueWithBlock:^id _Nullable(OSSTask * _Nonnull task) {
if (!task.error) {
NSLog(@"put symlink success");
} else {
NSLog(@"put symlink failed, error: %@", task.error);
}
return nil;
}];
// Terapkan pemblokiran sinkron untuk menunggu tugas selesai.
// [putSymlinkTask waitUntilFinished];Dapatkan tautan simbolik
Untuk mengambil objek yang ditunjuk oleh tautan simbolik, Anda harus memiliki izin baca pada tautan simbolik tersebut.
Kode berikut menunjukkan cara mengambil nama objek yang ditunjuk oleh tautan simbolik examplesymlink di bucket examplebucket.
OSSGetSymlinkRequest *request = [OSSGetSymlinkRequest new];
// Tentukan nama bucket. Contoh: examplebucket.
request.bucketName = @"examplebucket";
// Tentukan nama tautan simbolik.
request.objectKey = @"examplesymlink";
OSSTask *getSymlinkTask = [client getSymlink:request];
[getSymlinkTask continueWithBlock:^id _Nullable(OSSTask * _Nonnull task) {
if (!task.error) {
OSSGetSymlinkResult *result = task.result;
NSLog(@"get symlink: %@", result.httpResponseHeaderFields[@"x-oss-symlink-target"]);
} else {
NSLog(@"get symlink failed, error: %@", task.error);
}
return nil;
}];
// Terapkan pemblokiran sinkron untuk menunggu tugas selesai.
// [putSymlinkTask waitUntilFinished];Referensi
Untuk informasi selengkapnya tentang Operasi API untuk membuat tautan simbolik, lihat PutSymlink.
Untuk informasi selengkapnya tentang Operasi API untuk mengambil tautan simbolik, lihat GetSymlink.
Untuk informasi selengkapnya tentang cara menginisialisasi instans OSSClient, lihat Cara menginisialisasi instans OSSClient.