【发布时间】:2016-04-11 09:13:55
【问题描述】:
在为 nods.js 使用 aws-sdk npm 插件时,我可以使用以下代码上传 50kb 的 pdf(到 AWS s3):
var params = {
Bucket: BUCKET,
Key: pdf_key,
Body: file,
ContentType: 'application/pdf'
};
var s3 = new AWS.S3();
s3.putObject(params, function(error, data) {
console.log(data);
console.log(error);
if (error) {
console.log(error);
callback(error, null);
} else {
callback(null, pdf_key);
}
});
但是,当上传 11mb 的 pdf 文件时,即使指定了 ContentLength,上传也会永远持续下去,即使超时 2 分钟也是如此。
问题是如何让 aws s3 接受大的 pdf 文件?
更新
我仍然没有找到任何文档或答案。
更新 2
我将接受显示此框架或其他可以执行此操作的框架的答案。我需要该框架还能够允许对对象进行身份验证。
更新 3 我现在可以让它工作,但我还没有找到它不应该工作的原因。
提前致谢!
【问题讨论】:
-
我认为这不是代码问题。上传到 S3 的速度通常很慢,而且网络波动会使它变得更加不可预测。如果您担心上传大文件,可以使用分段上传。这是一个例子:gist.github.com/sevastos/5804803
-
嗯,分段上传听起来不错,但真的有必要吗?最大的 PDF 约为 50mb,如果您写它通常很慢等,我可以接受答案,因为我现在可以使用它,而无需从我的工作互联网进行任何修改,这比我的家要快。