gpt4 book ai didi

node.js - 如何使用 NodeJS 在 S3 存储桶上上传 CSV 文件?

转载 作者:行者123 更新时间:2023-12-03 12:16:32 26 4
gpt4 key购买 nike

我正在从 JSON 内容动态创建一个 CSV 文件,并将生成的 CSV 文件上传到 S3 存储桶上,而不是先将文件保存在本地。

下面是我的代码片段,使用下面的代码我上传到 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,[]);
}
}

请让我们知道上面的代码哪里出错了。

最佳答案

嗨,我再次尝试使用以下标题值,它对我有用。下面是代码:

var s3 = new AWS.S3();
var params = {
Bucket: bucketName,
Key: filePath,
Body: csvFileContent,
ContentType: 'application/octet-stream',
ContentDisposition: contentDisposition(filePath, {
type: 'inline'
}),
CacheControl: 'public, max-age=86400'
}
s3.putObject(params, function(err, data) {
if (err) {
console.log("Error at uploadCSVFileOnS3Bucket function", err);
next(err);
} else {
console.log("File uploaded Successfully");
next(null, filePath);
}
});

关于node.js - 如何使用 NodeJS 在 S3 存储桶上上传 CSV 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47863020/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com