4
我正尝试使用AWS节点SDK将音频块文件上传/下载到S3。我已经尝试了base64方法,它工作正常。但是我无法获取我已经作为上传参数的一部分捆绑在一起的元数据。如何从nodejs aws s3获取元数据getObject回调数据?
下面是上传的代码片段与元信息一起:
var myMetaInfo = "AdditionalInfo", dataToUpload = {Bucket: bucketName, Key:storageFolderFullPath , Body: myAudioFile.toString('base64'), Metadata: {metaInfo: myMetaInfo}};
s3.client.putObject(dataToUpload, function(err, data) {
if (!err) {
console.log("Successfully uploaded the file to ::" + dataToUpload.Bucket);
} else {
console.log(" **** ERROR while uploading ::"+err);
}
});
这是用于下载该文件的片段。元数据不是回调数据的一部分。 我试图打印回调“数据”来安慰,发现只有以下PARAMS可用 上次更改时间,则contentType,的ContentLength,ETag的,身体,将requestId对什么是错我的执行
var dataToDownload = {Bucket: bucketName, Key: storageFolderFullPath}, originalFile, myMetaInfo;
s3.client.getObject(dataToDownload, function(err, data) {
if (!err) {
originalFile = new Buffer(data.Body, 'base64');
myMetaInfo = data.Metadata.metaInfo;
console.log(" Meta info:: " + myMetaInfo);
fs.writeFile(fileStoragePath, originalFile, function(err) {
if (!err) {
console.log(" File written!! ");
} else {
console.log(" Error while writing the file !!" + err);
}
});
} else {
console.log(" **** ERROR while downloading ::"+err);
}
});
任何指针?我已经按照提到的文档here
任何帮助表示赞赏。