Tous les produits
Search
Centre de documentation

Object Storage Service:Gérer les liens symboliques à l'aide du SDK OSS pour Python 2.0

Dernière mise à jour :Sep 22, 2026

Les liens symboliques dans Object Storage Service (OSS) fonctionnent comme des raccourcis de fichiers sous Windows et vous permettent d'accéder rapidement aux objets associés. Cette rubrique explique comment utiliser le SDK OSS pour Python afin de créer et de récupérer des liens symboliques.

Remarques sur l'utilisation

  • L'exemple de code de cette rubrique utilise l'ID de région cn-hangzhou de la région Chine (Hangzhou). Par défaut, un point de terminaison public est utilisé pour accéder aux ressources d'un bucket. Si vous souhaitez accéder aux ressources du bucket depuis d'autres services Alibaba Cloud situés dans la même région que le bucket, utilisez un point de terminaison interne. Pour plus d'informations sur les régions et les points de terminaison pris en charge par OSS, consultez Régions et points de terminaison.

  • Pour créer un lien symbolique, vous devez disposer de l'autorisation oss:PutObject. Pour interroger un lien symbolique, vous devez disposer de l'autorisation oss:GetObject. Pour plus d'informations, consultez Accorder des autorisations personnalisées à un utilisateur RAM.

Méthode

Créer un lien symbolique

put_symlink(request: PutSymlinkRequest, **kwargs) → PutSymlinkResult

Obtenir un lien symbolique

get_symlink(request: GetSymlinkRequest, **kwargs) → GetSymlinkResult

Paramètres de requête

Paramètre

Type

Description

request

PutSymlinkRequest

Paramètres de la requête de création d'un lien symbolique. Pour plus d'informations, consultez PutSymlinkRequest

GetSymlinkRequest

Paramètres de la requête de récupération d'un lien symbolique. Pour plus d'informations, consultez GetSymlinkRequest

Paramètres de réponse

Type

Description

PutSymlinkResult

Valeur de retour. Pour plus d'informations, consultez PutSymlinkResult

GetSymlinkResult

Valeur de retour. Pour plus d'informations, consultez GetSymlinkResult

Pour la définition complète de la méthode de création d'un lien symbolique, consultez put_symlink.

Pour la définition complète de la méthode de récupération d'un lien symbolique, consultez get_symlink.

Exemple de code

Créer un lien symbolique

Voici l'exemple de code pour créer un lien symbolique.

import argparse
import alibabacloud_oss_v2 as oss

# Create a command-line argument parser
parser = argparse.ArgumentParser(description="put symlink sample")
# Add command-line arguments
parser.add_argument('--region', help='The region in which the bucket is located.', required=True)
parser.add_argument('--bucket', help='The name of the bucket.', required=True)
parser.add_argument('--endpoint', help='The domain names that other services can use to access OSS')
parser.add_argument('--key', help='The name of the object.', required=True)
parser.add_argument('--target', help='The destination object to which the symbolic link points.', required=True)

def main():
    # Parse command-line arguments
    args = parser.parse_args()

    # Load credentials from environment variables
    credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()

    # Use the default configurations of the SDK
    cfg = oss.config.load_default()
    # Set the credential provider
    cfg.credentials_provider = credentials_provider
    # Set the region
    cfg.region = args.region
    # If an endpoint is provided, set the endpoint
    if args.endpoint is not None:
        cfg.endpoint = args.endpoint

    # Create an OSS client
    client = oss.Client(cfg)

    # Create a request to create a symbolic link
    result = client.put_symlink(oss.PutSymlinkRequest(
        bucket=args.bucket,  # Specify the bucket name
        key=args.key,        # Specify the object name
        target=args.target,  # Specify the target object
    ))

    # Print the result
    print(f'status code: {result.status_code},'
          f' request id: {result.request_id},'
          f' version id: {result.version_id},'
    )

# If the script is run directly, call the main function
if __name__ == "__main__":
    main()

Obtenir un lien symbolique

Voici l'exemple de code pour obtenir un lien symbolique et le nom de son objet cible.

import argparse
import alibabacloud_oss_v2 as oss

# Create an ArgumentParser object to parse command-line arguments
parser = argparse.ArgumentParser(description="get symlink sample")
# Add command-line arguments
parser.add_argument('--region', help='The region in which the bucket is located.', required=True)
parser.add_argument('--bucket', help='The name of the bucket.', required=True)
parser.add_argument('--endpoint', help='The domain names that other services can use to access OSS')
parser.add_argument('--key', help='The name of the object.', required=True)

def main():
    # Parse command-line arguments
    args = parser.parse_args()

    # Load credentials from environment variables
    credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()

    # Use the default configurations of the SDK
    cfg = oss.config.load_default()
    # Set the credential provider
    cfg.credentials_provider = credentials_provider
    # Set the region
    cfg.region = args.region
    # If an endpoint is provided, set the endpoint
    if args.endpoint is not None:
        cfg.endpoint = args.endpoint

    # Create an OSS client
    client = oss.Client(cfg)

    # Send a request to obtain the symbolic link
    result = client.get_symlink(oss.GetSymlinkRequest(
        bucket=args.bucket,
        key=args.key,
    ))

    # Print the result
    print(f'status code: {result.status_code},'
          f' request id: {result.request_id},'
          f' version id: {result.version_id},'
          f' target: {result.target},'
          f' etag: {result.etag},'
    )

# If the script is run directly, call the main function
if __name__ == "__main__":
    main()

Références

  • Pour l'exemple de code complet de création d'un lien symbolique, consultez put_symlink.py.

  • Pour l'exemple de code complet de récupération d'un lien symbolique, consultez get_symlink.py.