Deleting Versioning Objects

Updated on 2024-04-26 GMT+08:00
NOTICE:

If you have any questions during development, post them on the Issues page of GitHub. For details about parameters and usage of each API, see the API Reference.

Deleting a Single Versioning Object

You can call ObsClient.deleteObject to delete a versioning object by specifying the version ID (VersionId). Sample 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. For details, see https://support.huaweicloud.com/eu/usermanual-ca/ca_01_0003.html.
    access_key_id: process.env.AccessKeyID,
    secret_access_key: process.env.SecretAccessKey,
    // Replace the example endpoint with the actual one in your case.
    server: 'https://obs.eu-west-101.myhuaweicloud.eu'
});

obsClient.deleteObject({
       Bucket : 'bucketname',
       Key : 'objectname',
       VersionId : 'versionid'
}, function (err, result) {
       if(err){
              console.log('Error-->' + err);
       }else{
              console.log('Status-->' + result.CommonMsg.Status);
       }
});

Deleting Versioning Objects in a Batch

You can call ObsClient.deleteObjects to pass the version ID (VersionId) of each to-be-deleted versioning object to delete them. Sample 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. For details, see https://support.huaweicloud.com/eu/usermanual-ca/ca_01_0003.html.
    access_key_id: process.env.AccessKeyID,
    secret_access_key: process.env.SecretAccessKey,
    // Replace the example endpoint with the actual one in your case.
    server: 'https://obs.eu-west-101.myhuaweicloud.eu'
});
 
obsClient.deleteObjects({ 
       Bucket: 'bucketname', 
       // Set the response mode to verbose.
       Quiet : false, 
       Objects : [{Key:'objectname1', VersionId : 'version1'},{Key:'objectname2', VersionId : 'version2'}, {Key : 'objectname3', VersionId : 'version3'}] 
}, function (err, result) { 
       if(err){ 
              console.log('Error-->' + err); 
       }else{ 
              console.log('Status-->' + result.CommonMsg.Status); 
              if(result.CommonMsg.Status < 300 && result.InterfaceResult){
                     // Obtain the successfully deleted objects.
                     console.log('Deleteds:'); 
                     for(var i in result.InterfaceResult.Deleteds){ 
                            console.log('Deleted[' + i + ']:'); 
                            console.log('Key-->'+result.InterfaceResult.Deleteds[i]['Key']); 
                            console.log('VersionId-->' + result.InterfaceResult.Deleteds[i]['VersionId']); 
                     } 
                     // Obtain information about objects that were not deleted.
                     console.log('Errors:'); 
                     for(var j in result.InterfaceResult.Errors){ 
                            console.log('Error[' + j + ']:'); 
                            console.log('Key-->' + result.InterfaceResult.Errors[j]['Key']); 
                            console.log('VersionId-->' + result.InterfaceResult.Errors[j]['VersionId']); 
                     }
              }
       } 
});
Feedback

Feedback

Feedback

0/500

Selected Content

Submit selected content with the feedback