我尝试这样,它每次都会生成具有相同名称的图像,我想要动态名称,并且必须将其上传到亚马逊s3。请帮忙
let base64String = req.body.imgBase64;
let base64Image = base64String.split(';base64,').pop();
fs.writeFile('image.jpg', base64Image, { encoding: 'base64' }, function(
err
) {
console.log('File created');
res.json('fire created');
});
此代码段将始终将图像命名为“image.jpg”,因为您将其作为常量传递到 fs.writeFile()
第一个参数中。要动态命名文件,您需要在循环中包含一个在每次迭代时都会更改的变量。例如,您可以使用整数来执行此操作:
var i;
var count = 0;
for (i = 0; i < numfiles; i++) {
let base64String = req.body.imgBase64;
let base64Image = base64String.split(';base64,').pop();
var countString = String(count)
fs.writeFile('image' + countString + '.jpg', base64Image, { encoding: 'base64' }, function(
err
) {
console.log('File ' + countString + ' created');
res.json('File ' + countString + ' created');
});
count++;
}
关于上传到S3,网上有很多资源可以指导您使用node.js上传到S3。
我是一名优秀的程序员,十分优秀!