Updated on 2026-01-16 GMT+08:00

Viewing Lifecycle Rules

You can call ObsClient.getBucketLifecycle to view lifecycle rules of a bucket.

This example views the lifecycle configuration of bucket bucketname.

The example code is as follows:

// Create an instance of ObsClient.
var obsClient = new ObsClient({
    // Hard-coded or plaintext AK/SK are risky. For security purposes, encrypt your AK/SK and store them in the configuration file or environment variables. In this example, the AK/SK are stored in environment variables for identity authentication. Before running this example, configure environment variables AccessKeyID and SecretAccessKey.
    // The front-end code does not have the process environment variable, so you need to use a module bundler like webpack to define the process variable.
    // Obtain an AK/SK pair on the management console.
    access_key_id: process.env.AccessKeyID,
    secret_access_key: process.env.SecretAccessKey,
    server: 'https://your-endpoint'
'
});

obsClient.getBucketLifecycle({
       Bucket: 'bucketname'
}, function (err, result) {
       if(err){
              console.log('Error-->' + err);
       }else{
              console.log('Status-->' + result.CommonMsg.Status);
              if(result.CommonMsg.Status < 300 && result.InterfaceResult){
                     for(var i=0;i<result.InterfaceResult.Rules.length;i++){
                           console.log('Rule[' + i + ']:');
                           console.log('ID-->' + result.InterfaceResult.Rules[i]['ID']);
                           console.log('Prefix-->' + result.InterfaceResult.Rules[i]['Prefix']);
                           console.log('Status-->' + result.InterfaceResult.Rules[i]['Status']);
                           for(var j=0;j<result.InterfaceResult.Rules[i]['Transitions'].length;j++){
                                  console.log('Transition[' + j + ']:');
                                  console.log('Transition[StorageClass]-->' + result.InterfaceResult.Rules[i]['Transitions'][j]['StorageClass']);
                                  console.log('Transition[Date]-->' + result.InterfaceResult.Rules[i]['Transitions'][j]['Date']);
                                  console.log('Transition[Days]-->' + result.InterfaceResult.Rules[i]['Transitions'][j]['Days']);                            }
                           console.log('Expiration[Date]-->' + result.InterfaceResult.Rules[i]['Expiration']['Date']);
                           console.log('Expiration[Days]-->' + result.InterfaceResult.Rules[i]['Expiration']['Days']);
                           for(var k=0;k<result.InterfaceResult.Rules[i]['NoncurrentVersionTransitions'].length;k++){
                                  console.log('NoncurrentVersionTransition[' + k + ']:');
                                  console.log('NoncurrentVersionTransition[StorageClass]-->' + result.InterfaceResult.Rules[i]['NoncurrentVersionTransitions'][k]['StorageClass']);
                                  console.log('NoncurrentVersionTransition[NoncurrentDays]-->' + result.InterfaceResult.Rules[i]['NoncurrentVersionTransitions'][k]['NoncurrentDays']);                            }
                           console.log('NoncurrentVersionExpiration[NoncurrentDays]-->' + result.InterfaceResult.Rules[i]['NoncurrentVersionExpiration']['NoncurrentDays']);
                     }
              }
       }
});