【发布时间】:2018-09-07 23:39:49
【问题描述】:
我正在尝试将 svg QR 码推送到我的节点应用程序上的 S3。
据我了解,我应该将缓冲区上传到 S3。当我检查 qrResult 时,我在任何地方都看不到。也许我从根本上误解了 writeStreams 的概念,以及如何将数据通过管道传输到 S3 上传,但我似乎无法弄清楚这一点......
let fileName = 'qrCode'
let qrCode = Qr.image('The ultimate test', { type: 'svg' });
let output = fs.createWriteStream(fileName)
let qrResult = qrCode.pipe(output)
let s3bucket = new Aws.S3({
accessKeyId: env.AWS_ACCESS_KEY
secretAccessKey: env.AWS_SECRET,
Bucket: env.S3_BUCKET_NAME,
});
let params = {
Bucket: env.S3_BUCKET_NAME,
Key: fileName,
Body: qrResult,
};
s3bucket.upload(params, function (err, qrResult) {
if (err) {
console.log('error in callback');
console.log(err);
}
console.log('success');
console.log(qrResult);
});
【问题讨论】:
标签: node.js amazon-web-services amazon-s3 fs