Les liens symboliques fonctionnent comme des raccourcis de fichiers sous Windows et vous permettent d’accéder rapidement aux objets associés dans Object Storage Service (OSS).
Remarque d’utilisation
Avant d’exécuter l’exemple de code présenté dans cette rubrique, vous devez créer une instance OSSClient en utilisant des méthodes telles que l’utilisation d’un nom de domaine personnalisé ou du Security Token Service (STS). Pour plus d’informations, consultez la section Initialisation.
Créer un lien symbolique
Le code suivant montre comment créer un lien symbolique nommé examplesymlink qui pointe vers un objet nommé exampleobject.txt dans un compartiment nommé examplebucket :
OSSPutSymlinkRequest *request = [OSSPutSymlinkRequest new];
// Specify the name of the bucket. Example: examplebucket.
request.bucketName = @"examplebucket";
// Specify the name of the symbolic link.
request.objectKey = @"examplesymlink";
// Specify the full path of the object to which you want the symbolic link to point. Do not include the bucket name in the full path.
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;
}];
// Implement synchronous blocking to wait for the task to complete.
// [putSymlinkTask waitUntilFinished];
Interroger un lien symbolique
Pour interroger l’objet vers lequel pointe un lien symbolique, vous devez disposer des permissions de lecture sur ce lien symbolique.
Le code suivant montre comment interroger le nom de l’objet vers lequel pointe un lien symbolique nommé examplesymlink dans le compartiment examplebucket :
OSSGetSymlinkRequest *request = [OSSGetSymlinkRequest new];
// Specify the name of the bucket. Example: examplebucket.
request.bucketName = @"examplebucket";
// Specify the name of the symbolic link.
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;
}];
// Implement synchronous blocking to wait for the task to complete.
// [putSymlinkTask waitUntilFinished];
Références
Pour plus d’informations sur l’opération API que vous pouvez appeler pour créer un lien symbolique, consultez la section PutSymlink.
Pour plus d’informations sur l’opération API que vous pouvez appeler pour interroger un lien symbolique, consultez la section GetSymlink.
Pour plus d’informations sur l’initialisation d’une instance OSSClient, consultez la section Initialisation.