[英]How to decode Base64 string and upload as image on to amazon s3 in nodejs?
我試圖這樣,它每次都產生一個具有相同名稱的圖像,我想要動態名稱,並且必須將其上傳到Amazon 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。
我建議您在圖像中添加時間戳記/日期戳以使其變得簡單。 至於亞馬遜問題,我建議作為一個單獨的問題進行詢問,因為那是完全不同的。
let base64String = req.body.imgBase64;
let base64Image = base64String.split(';base64,').pop();
fs.writeFile(`image${Date.now()}.jpg`, base64Image, { encoding: 'base64' }, function(
err
) {
console.log('File created');
res.json('fire created');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.