Javascript AWS S3 SDK:如何从多文件上载的进度回调中获取文件名?

Javascript AWS S3 SDK:如何从多文件上载的进度回调中获取文件名?,javascript,amazon-s3,Javascript,Amazon S3,因此,我使用AWS S3 Javascript SDK上载多个文件下面的代码运行良好,但我确实有一个问题。progress的函数(evt)是异步调用的,我无法获取调用它的文件名evt不包括文件名。有办法知道吗 如何将文件名输出到控制台(我在控制台中显示>>我需要文件名这里我需要文件名这里evt.key->应该给出正在上载的文件名 编辑: 下面是我用于托管上传的完整代码 app.post('/uploadLargeFile',upload.array('file', 20),function(r

因此,我使用AWS S3 Javascript SDK上载多个文件下面的代码运行良好,但我确实有一个问题。progress的
函数(evt)
是异步调用的,我无法获取调用它的文件名<代码>evt不包括文件名。有办法知道吗


如何将文件名输出到控制台(我在控制台中显示
>>我需要文件名这里我需要文件名这里evt.key->应该给出正在上载的文件名

编辑:

下面是我用于托管上传的完整代码

app.post('/uploadLargeFile',upload.array('file', 20),function(req,res){

    console.log("received File")
    var file = req.files;
    for(var i=0;i<req.files.length;i++){
        var file = req.files[i];
        uploadLargeFiles(file);
    }
})

function uploadLargeFiles(file){
    var params={
        ACL :'public-read',
        Body : new Buffer(file.buffer),
        Bucket:'ascendon1',
        ContentType:file.mimetype,
        Key:file.originalname
    }
    var managedUpload = new AWS.S3.ManagedUpload({
        params:params
    });
    managedUpload.on('httpUploadProgress', function(progress) {
        console.log(progress);
    });

    managedUpload.send(function(err, data) {
        console.log(err, data);
    });

}
app.post('/uploadLargeFile',upload.array('file',20),函数(req,res){
log(“收到的文件”)
var file=req.files;

对于(var i=0;iIt似乎
key
不是
evt
的一部分。当我切换到
console.log(“上传”+evt.key+”+parseInt((evt.loaded*100)/evt.total)+'%'))
我得到
未定义的
-并且exmaple输出是
上传未定义的64%
文件是否正确上传到存储桶?是的。上传后所有文件都正确到达。您使用的AWS S3 Javascript SDK版本是什么?我使用的是2.230.1版本
app.post('/uploadLargeFile',upload.array('file', 20),function(req,res){

    console.log("received File")
    var file = req.files;
    for(var i=0;i<req.files.length;i++){
        var file = req.files[i];
        uploadLargeFiles(file);
    }
})

function uploadLargeFiles(file){
    var params={
        ACL :'public-read',
        Body : new Buffer(file.buffer),
        Bucket:'ascendon1',
        ContentType:file.mimetype,
        Key:file.originalname
    }
    var managedUpload = new AWS.S3.ManagedUpload({
        params:params
    });
    managedUpload.on('httpUploadProgress', function(progress) {
        console.log(progress);
    });

    managedUpload.send(function(err, data) {
        console.log(err, data);
    });

}