私は、JSONコンテンツからその場でCSVファイルを作成し、最初にファイルをローカルに保存するのではなく、S3バケット上に生成されたCSVファイルをアップロードしています。NodeJSを使用してS3バケットにCSVファイルをアップロードする方法は?
以下は私のCSVファイルをS3バケットにアップロードしたものの、正しい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);
}
});
}
また、私はJSONからcsvファイルコンテンツを生成するために "json2csv" npmモジュールを使用しています。以下は
はコードです:
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
こんにちは私は上記のヘッダーをもう一度試して、それは動作し、私は別のコメントで全体のコードを追加しました。ありがとう –