【发布时间】:2021-12-07 20:55:23
【问题描述】:
我正在尝试将文件从特定文件夹位置上传到示例 S3 存储桶。我为此使用标准的nodejs aws-sdk。文件是深度缩放图像 (.dzi) 文件。 文件正在上传到我的 S3 存储桶,但文件内容未正确上传。就像我上传大小为 800B 的图像,但上传后图像大小只有 7B。我尝试下载它以查看其内容,但该文件不包含图像,而仅包含文件名。这是我为上传文件运行的代码:
function read(file, numFiles) {
fs.readFile(file, function (err, data) {
if (err) console.log(err);
const fileContent = Buffer.from(file, "binary");
s3.putObject(
{
Bucket: "sample-bucket",
Key: file,
Body: fileContent,
},
function (resp) {
console.log(arguments);
console.log("Successfully uploaded, ", file);
uploadCount++;
console.log("uploadcount is:", uploadCount);
if (uploadCount == numFiles) {
res.send("All files uploaded");
}
}
).on("httpUploadProgress", (evt) => {
console.log(`Uploaded ${evt.loaded} out of ${evt.total}`);
});
});
}
我正在将文件从另一个函数传递给这个读取函数。我不确定为什么会这样。任何帮助将不胜感激。
上传图片属性之前:
上传到 S3 存储桶的图片属性:
【问题讨论】:
标签: javascript node.js amazon-s3 aws-sdk