我刚刚用sails和skipper-3将文件上传到AWS S3,效果很好。现在,如何使用Sails删除AWS S3中的文件?
当我上传我存储在数据库中的文件时,URL指向AWS S3。
skipper-s3
已经包含读取、列出或删除文件的函数。我正在使用以下代码从AWS S3中删除一些文件。你可以这样使用它:
var skipper = require('skipper-s3')({key: KEY,secret: SECRET,bucket: BUCKET});
skipper.rm(imageName,function(){});
检查源代码上的模块功能
您可以直接使用AWS-SDK,也可以使用npm
提供的众多包装器之一。
根据亚马逊的文档,你会有这样的东西:
s3.deleteObject(params, function(err, data) {
if (err) console.log(err, err.stack); // error
else console.log(); // deleted
});
params
应保存bucket、凭证、区域、路径等参数。请参阅Amazonnodejs示例中的示例。
当然,您可以使用AWS SDK上传文件,也可以在sails中使用其他AWS服务。
你的问题也在这里得到了回答。
对于一次删除单个图像首先,安装:
npm install --save aws-sdk
现在写下以下代码:
var AWS = require("aws-sdk");
var s3 = new AWS.S3();
s3.config.update({
accessKeyId: "your aws key",
secretAccessKey: "your aws secret key"
});
s3.config.region = "your aws bucket region";
var params = {
Bucket: "Bucket name",
Key: "image name"
};
s3.deleteObject(params, function(err, data) {
if (err) console.log(err, err.stack);
// an error occurred
console.log(data, "tttttttttttt"); // successful response
});