Todos los productos
Search
Centro de documentos

Object Storage Service:Gestión de enlaces simbólicos con OSS SDK for Android

Última actualización: Sep 22, 2026

Los enlaces simbólicos funcionan como los accesos directos de archivos en Windows y permiten acceder rápidamente a los objetos asociados en Object Storage Service (OSS).

Notas de uso

  • Antes de ejecutar el código de ejemplo de este tema, cree una instancia de OSSClient mediante métodos como el uso de un nombre de dominio personalizado o Security Token Service (STS). Para obtener más información, consulte Initialization (Android SDK).

Creación de un enlace simbólico

A continuación se muestra un ejemplo de código para crear un enlace simbólico:

// Create a request. 
PutSymlinkRequest putSymlink = new PutSymlinkRequest();
// Specify the name of the bucket. 
putSymlink.setBucketName("yourBucketName");
// Specify the name of the symbolic link. 
putSymlink.setObjectKey("yourSymLink");
// Specify the name of the object to which you want the symbolic link to point. 
putSymlink.setTargetObjectName("yourTargetObjectName");

ObjectMetadata metadata = new ObjectMetadata();
// Specify whether to overwrite the object that has the same name. In this example, this parameter is set to true, which indicates that the object that has the same name cannot be overwritten. 
//metadata.setHeader("x-oss-forbid-overwrite", "true");
// Specify the access control list (ACL) of the object. In this example, the ACL is set to private. 
//metadata.setHeader("x-oss-object-acl", "private");
// Specify the storage class of the object. In this example, the storage class is set to Standard. 
//metadata.setHeader("x-oss-storage-class", "Standard");
putSymlink.setMetadata(metadata);

OSSAsyncTask task = oss.asyncPutSymlink(putSymlink, new OSSCompletedCallback<PutSymlinkRequest, PutSymlinkResult>() {
    @Override
    public void onSuccess(PutSymlinkRequest request, PutSymlinkResult result) {
        Log.d("PutSymlink", "PutSymlink success");
    }

    @Override
    public void onFailure(PutSymlinkRequest request, ClientException clientException,
                          ServiceException serviceException) {
        // Handle request exceptions. 
        if (clientException != null) {
            // Handle client exceptions, such as network exceptions. 
            clientException.printStackTrace();
        }
        if (serviceException != null) {
            // Handle server-side exceptions. 
            Log.e("ErrorCode", serviceException.getErrorCode());
            Log.e("RequestId", serviceException.getRequestId());
            Log.e("HostId", serviceException.getHostId());
            Log.e("RawMessage", serviceException.getRawMessage());
        }
    }
});
task.waitUntilFinished();

Consulta del nombre del objeto al que apunta un enlace simbólico

Para consultar un enlace simbólico, necesita permisos de lectura sobre dicho enlace. A continuación se muestra un ejemplo de código para consultar el nombre del objeto al que apunta un enlace simbólico:

// Create a request. 
GetSymlinkRequest getSymlink = new GetSymlinkRequest();
// Specify the name of the bucket. 
getSymlink.setBucketName("yourBucketName");
// Specify the name of the symbolic link. 
getSymlink.setObjectKey("yourSymLink");

OSSAsyncTask task = oss.asyncGetSymlink(getSymlink, new OSSCompletedCallback<GetSymlinkRequest,
        GetSymlinkResult>() {
    @Override
    public void onSuccess(GetSymlinkRequest request, GetSymlinkResult result) {
        OSSLog.logInfo("targ::"+result.getTargetObjectName());

    }

    @Override
    public void onFailure(GetSymlinkRequest request, ClientException clientException,
                          ServiceException serviceException) {
        OSSLog.logError("error: "+serviceException.getRawMessage());

    }
});
task.waitUntilFinished();

Referencias

  • Para consultar el código de ejemplo completo que se utiliza para gestionar enlaces simbólicos, visite GitHub.

  • Para obtener más información sobre la operación de API que permite crear un enlace simbólico, consulte PutSymlink.

  • Si desea conocer más detalles sobre la operación de API para consultar un enlace simbólico, consulte GetSymlink.

  • Para saber cómo inicializar una instancia de OSSClient, consulte Initialization.