小编Kev*_*vin的帖子

JavaScript aws-sdk S3 deleteObject(s)成功但实际上并没有删除任何东西

在我正在构建的MEAN.js应用程序中,我将图像上传到AWS S3.我正在尝试使用AWS SDK从站点中删除不需要的图像,但在成功调用ajax后,该文件仍保留在S3上.

我已经像这样需要AWS SDK,它可以使用和不使用配置变量(因为它应该):

var aws = require('aws-sdk');
aws.config.update({accessKeyId: process.env.AWS_ACCESS_KEY_ID, secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY});
Run Code Online (Sandbox Code Playgroud)

对于我的路线,我有以下代码:

router.post('/delete', auth, function(req,res, next){
if(req.body.key) {
    var s3 = new aws.S3();
    var params = {
        Bucket: 'bucket name',
        Key: req.body.key
    };
    s3.deleteObject(params, function (err, data) {
        if (err) {
            console.log(err, err.stack);
            return next(err);
        }
        console.log(data);
        res.end('done');
Run Code Online (Sandbox Code Playgroud)

我收到200响应并{}登录到控制台但该文件未从存储中删除.我也尝试过deleteObjects这样的方法:

var params = {
        Bucket: 'bucket name',
        Delete: {
            Objects: [
                {
                    Key: req.body.key
                }
            ]
        }

    };
    s3.deleteObjects(params, function (err, data) {
        if (err) …
Run Code Online (Sandbox Code Playgroud)

javascript amazon-s3 express aws-sdk

7
推荐指数
2
解决办法
2812
查看次数

标签 统计

amazon-s3 ×1

aws-sdk ×1

express ×1

javascript ×1