2015-01-03 3 views

Antwort

14

Sie die js Methode von s3 verwenden können: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#deleteObject-property

var AWS = require('aws-sdk'); 
AWS.config.loadFromPath('./credentials-ehl.json'); 
var s3 = new AWS.S3(); 
var params = { Bucket: 'your bucket', Key: 'your object' }; 
s3.deleteObject(params, function(err, data) { 
    if (err) console.log(err, err.stack); // error 
    else  console.log();     // deleted 
}); 

Beachten Sie, dass S3 nie gibt sie das Objekt gelöscht wurde. Sie haben es zu überprüfen, bevor oder nachdem sie mit getobject, headobject, waitfor, etc

+0

S3 gibt DeleteMarker und VersionId zurück. – Rohit

+0

@Rohit das ist, weil Sie eine versionierte Bucket haben. Sie müssen alle Objektversionen (einschließlich aller Löschmarkierungen) löschen, um das Objekt vollständig zu entfernen. – AJB

8

Sie Konstruktion wie diese verwenden:

var params = { 
    Bucket: 'yourBucketName', 
    Key: 'fileName' 
/* where value for 'Key' equals 'pathName1/pathName2/.../pathNameN/fileName.ext' - full path name to your file without '/' at the beginning */ 
}; 
s3.deleteObject(params, function(err, data) { 
    if (err) console.log(err, err.stack); // an error occurred 
    else  console.log(data);   // successful response 
}); 

Und vergessen Sie nicht, um es in die Versprechen zu wickeln.