我從JSON內容中即時創建一個CSV文件,並在S3存儲區上傳生成的CSV文件,而不是先在本地保存文件。如何使用NodeJS在S3 Bucket上上傳CSV文件?
下面是我的代碼片段,使用下面的代碼我上傳到S3存儲桶的CSV文件,但它似乎並不是正確的CSV格式。
var uploadCSVFileOnS3Bucket = function(next, csvFileContent,results) {
console.log("uploadCSVFileOnS3Bucket function started");
var bufferObject = new Buffer.from(JSON.stringify(csvFileContent));
var filePath = configurationHolder.config.s3UploadFilePath;
var s3 = new AWS.S3();
var params = {
Bucket: 'bucket_name'
Key: 's3UploadFilePath',
Body: bufferObject,
CacheControl:'public, max-age=86400'
}
s3.upload(params, function(err, data) {
if (err) {
console.log("Error at uploadCSVFileOnS3Bucket function",err);
next(err);
} else {
console.log("File uploaded Successfully");
next(null, filePath);
}
});
};
此外,我使用「json2csv」npm模塊從JSON生成csv文件內容。
下面是代碼:
var generateCSVFile = function(next,callback,csvFileContent) {
console.log("generateCSVFile function started",csvFileContent);
if(csvFileContent && csvFileContent.length>0) {
var fields = ['field1','field2','field3',........];
var csv = json2csv({ data: csvFileContent, fields: fields });
console.log('created',csv);
next(null,csv);
}
else {
next(null,[]);
}
}
請讓我們知道上面的代碼是怎麼了。
我試過使用上面的標題,但它沒有提供給我正確的結果。 –
你能ping我錯誤 – Vipul
嗨我再次嘗試使用上述標題,它的工作原理,我在一個單獨的評論中添加了整個代碼。謝謝 –