全部產品
Search
文件中心

Object Storage Service:iOS管理軟連結

更新時間:Aug 20, 2024

軟連結功能用於便捷訪問Bucket內的常用Object。設定軟連結後,您可以使用類似於Windows的捷徑,通過軟連結檔案開啟Object。

注意事項

  • 使用本文樣本前您需要先通過自訂網域名、STS等方式建立OSSClient,具體請參見初始化

建立軟連結

以下代碼用於為examplebucket中的exampleobject.txt檔案建立名為examplesymlink的軟連結。

OSSPutSymlinkRequest *request = [OSSPutSymlinkRequest new];
// 填寫Bucket名稱,例如examplebucket。
request.bucketName = @"examplebucket";
// 填寫軟連結名稱。
request.objectKey = @"examplesymlink";
// 填寫軟連結指定的Object完整路徑,Object完整路徑中不能包含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;
}];
// 實現同步阻塞等待任務完成。
// [putSymlinkTask waitUntilFinished];

擷取軟連結

擷取軟連結要求您對該軟連結具有讀許可權。

以下代碼用於擷取examplebucket儲存空間中軟連結examplesymlink指向的目標檔案名稱。

OSSGetSymlinkRequest *request = [OSSGetSymlinkRequest new];
// 填寫Bucket名稱,例如examplebucket。
request.bucketName = @"examplebucket";
// 填寫軟連結名稱。
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;
}];
// 實現同步阻塞等待任務完成。
// [putSymlinkTask waitUntilFinished];

相關文檔