Deleting 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 Object

You can call ObsClient.deleteObject to delete a single object. 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'
}, function (err, result) {
       if(err){
              console.log('Error-->' + err);
       }else{
              console.log('Status-->' + result.CommonMsg.Status);
       }
});

Deleting Objects in a Batch

You can call ObsClient.deleteObjects to delete objects in a batch.

A maximum of 1000 objects can be deleted each time. Two response modes are supported: verbose (detailed) and quiet (brief).

  • In verbose mode (default mode), the returned response includes the deletion result of each requested object.
  • In quiet mode, the returned response includes only results of objects failed to be deleted.

Sample code:

// 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'},{Key:'objectname2'}, {Key : 'objectname3'}] 
}, 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 i in result.InterfaceResult.Errors){ 
                       console.log('Error[' + i + ']:'); 
                       console.log('Key-->' + result.InterfaceResult.Errors[i]['Key']); 
                       console.log('VersionId-->' + result.InterfaceResult.Errors[i]['VersionId']); 
                } 
              }
       } 
});
NOTE:

Use the Quiet parameter to specify the response mode and the Objects parameter to specify the to-be-deleted objects.

Feedback

Feedback

Feedback

0/500

Selected Content

Submit selected content with the feedback