【发布时间】:2014-04-30 18:45:38
【问题描述】:
我正在通过 node.js 运行 https 服务器。我正在使用 amazon s3 存储一些文件。我使用 aws-sdk-js 作为节点模块。
这是我用来在我的服务器上上传内容的代码:
var aws = require('aws-sdk');
aws.config.loadFromPath('./AwsConfig.json');
var s3 = new aws.S3();
s3.putObject({
ACL: 'public-read',
Bucket: BUCKET_NAME,
Key: remoteFilename,
Body: fileBuffer,
ContentType: metaData
}, function (err, obj) {
if(err) console.log(err);
else {
console.log('uploaded file[' + path + '] to [' + remoteFilename + '] as [' + metaData + ']');
}
}).on('httpUploadProgress', function(progress) {
console.log('Upload', progress.loaded, 'of' , progress.total, 'bytes');
});
我可以正确获取文件,但是在上传过程中我无法访问我网站上的任何内容。我相信在上传过程中它会阻止我服务器上的任何活动。我以为这段代码是异步的,但我猜不是。
关于如何防止这种阻塞的任何建议?
提前谢谢你。
【问题讨论】:
标签: node.js asynchronous amazon-web-services amazon-s3