Tous les produits
Search
Centre de documentation

Object Storage Service:Interroger les informations d'un bucket (OSS SDK for Java 1.0)

Dernière mise à jour :Aug 18, 2026

Un bucket est un conteneur utilisé pour stocker des objets dans Object Storage Service (OSS). Cette rubrique explique comment interroger les informations relatives à un bucket.

Notes d'utilisation

  • Cette rubrique utilise l'endpoint public de la région Chine (Hangzhou). Pour accéder à OSS depuis d'autres services Alibaba Cloud situés dans la même région, utilisez un endpoint interne. Pour plus de détails sur les régions et endpoints pris en charge, consultez Régions et endpoints.

  • Les identifiants d'accès sont obtenus à partir des variables d'environnement. Pour plus d'informations, consultez Configuration des identifiants d'accès.

  • Cette rubrique montre comment créer une instance OSSClient avec un endpoint OSS. Pour d'autres configurations, telles que l'utilisation d'un domaine personnalisé ou l'authentification via des identifiants du Security Token Service (STS), consultez Configuration du client.

  • Pour interroger les informations d'un bucket, vous devez disposer de l'autorisation oss:GetBucketInfo. Pour plus d'informations, consultez Accorder une politique personnalisée.

Exemples

Le code suivant montre comment interroger les informations d'un bucket, notamment sa région et sa date de création :

import com.aliyun.oss.*;
import com.aliyun.oss.common.auth.*;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.BucketInfo;

public class Demo {
    public static void main(String[] args) throws Exception {
        // In this example, the endpoint of the China (Hangzhou) region is used. Specify your actual endpoint. 
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured. 
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // Specify the name of the bucket. Example: examplebucket. 
        String bucketName = "examplebucket";
        // Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to cn-hangzhou.
        String region = "cn-hangzhou";
                
        // Create an OSS Client instance. 
        // Release the OSS Client instance via the shutdown method when the it is no longer used.
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);        
        OSS ossClient = OSSClientBuilder.create()
        .endpoint(endpoint)
        .credentialsProvider(credentialsProvider)
        .clientConfiguration(clientBuilderConfiguration)
        .region(region)               
        .build();

        try {
            // Information about a bucket includes the region (Region or Location), creation date (CreationDate), and owner (Owner) of the bucket. 
            // Call the shutdown method to release associated resources when the OSS Client is no longer in use.
            BucketInfo info = ossClient.getBucketInfo(bucketName);
            // Query the region in which the bucket is located. 
            System.out.println(info.getBucket().getLocation());
            // Query the creation date of the bucket. 
            System.out.println(info.getBucket().getCreationDate());
            // Query the owner of the bucket. 
            System.out.println(info.getBucket().getOwner());           
            // Query the redundancy type of the bucket. 
            System.out.println(info.getDataRedundancyType());
            // Query the access tracking status of the bucket. Only OSS SDK for Java 3.16.0 or later allows you to query the access tracking status of a bucket. 
            System.out.println(info.getBucket().getAccessMonitor());
        } catch (OSSException oe) {
            System.out.println("Caught an OSSException, which means your request made it to OSS, "
                    + "but was rejected with an error response for some reason.");
            System.out.println("Error Message:" + oe.getErrorMessage());
            System.out.println("Error Code:" + oe.getErrorCode());
            System.out.println("Request ID:" + oe.getRequestId());
            System.out.println("Host ID:" + oe.getHostId());
        } catch (ClientException ce) {
            System.out.println("Caught an ClientException, which means the client encountered "
                    + "a serious internal problem while trying to communicate with OSS, "
                    + "such as not being able to access the network.");
            System.out.println("Error Message:" + ce.getMessage());
        } finally {
            if (ossClient != null) {
                ossClient.shutdown();
            }
        }
    }
}

Références

Pour plus d'informations sur l'opération API permettant d'interroger les informations d'un bucket, consultez GetBucketInfo.