我使用 s3.deleteObject() 方法洗掉了 AWS S3 存盤桶上的上傳檔案。但作為回應,我沒有收到任何錯誤,但仍然沒有洗掉該檔案。我認為這可能是權限問題,但是我沒有收到權限錯誤,并且該檔案已由 multerS3 上傳。
const aws = require('aws-sdk');
aws.config.update({
accessKeyId: accessKeyId,
secretAccessKey: secretAccessKey
});
const s3 = new aws.S3();
(async () => {
let params = {
Bucket: 'bucket',
Key: 'https://bucket.s3.amazonaws.com/profiles/1648634140824-xyz.png'
};
console.log(`params ->> `, params);
s3.deleteObject(params, function (error, data) {
if (error) {
console.log(`\nDeleteImageFromS3 error ->> ${error}`);
return;
} else {
console.log('\ns3.deleteObject data ->> ', data);
return;
}
});
})();
作為回應,我低于日志并且檔案仍然存在于S3 存盤桶中
s3.deleteObject data ->> { DeleteMarker: true,
VersionId: 'DtD9ccuW2zl1ylWvQTrjJfk3yVa_Ze1A' }
謝謝提前
uj5u.com熱心網友回復:
請更改關鍵部分,您不必定義 aws s3 的域(所有這些事情僅由處理aws-sdk),只需該存盤桶中存在的檔案名。
let params = {
Bucket: 'bucket',
Key: 'profiles/1648634140824-xyz.png'
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/457754.html
