我目前正在尝试使用aws-sdk和gulp将网站的资产上传到amazon s3,但是现在我只是使用以下代码上传单个文件:
gulp.task('publish', function() {
var AWS = require('aws-sdk'),
fs = require('fs');
AWS.config.accessKeyId = 'access_id';
AWS.config.secretAccessKey = 'secret_key';
AWS.config.region = 'eu-central-1';
var fileStream = fs.createReadStream('folder/filename');
fileStream.on('error', function (err) {
if (err) { throw err; }
});
fileStream.on('open', function () {
var s3 = new AWS.S3();
s3.putObject({
Bucket: 'bucket_name',
Key: 'assets/filename',
Body: fileStream,
ACL:'public-read'
}, function (err) {
if (err) { throw err; }
else { console.log("Upload successfull"); }
});
});
});
Run Code Online (Sandbox Code Playgroud)
由于我既不是node.js也不是JS dev,我不知道如何将所有资产上传到S3的文件夹资产中.
理想情况下,应用我用来上传一个文件的操作,但对于每个文件都会很整洁.这怎么可行?