Javascript S3 putObject回调未返回预期对象

Javascript S3 putObject回调未返回预期对象,javascript,node.js,amazon-web-services,express,amazon-s3,Javascript,Node.js,Amazon Web Services,Express,Amazon S3,在我将图像上传到S3之后,我想获得文件的链接(或者文件名也可以)。我上传使用下面的代码,它的工作 s3Bucket.putObject(data, function(err, data){ if (err) { console.log(err); res.send({result:0}); } else { res.send({result:1}); console.log(data

在我将图像上传到S3之后,我想获得文件的链接(或者文件名也可以)。我上传使用下面的代码,它的工作

s3Bucket.putObject(data, function(err, data){
        if (err) { 
          console.log(err);
          res.send({result:0});
        } else {
          res.send({result:1});
          console.log(data)
        }
    });
但在回调数据中,它只有一个属性,即etag。在文档中,它清楚地说明了它有其他对象,那么如何获取上传文件的路径呢

并不意味着对象键将在
数据
回调参数中可用

您可以根据bucket的名称和请求数据的
params.Key
属性计算出所创建对象的S3URI

下面是一个如何在
putObject
回调中执行此操作的示例

s3Bucket.putObject(data, function(err, data) {
  var params = this.request.params;
  var region = this.request.httpRequest.region;
  console.log('s3://' + params.Bucket + '/' + params.Key);
  console.log('https://s3-' + region + '.amazonaws.com/' + params.Bucket + '/' + params.Key)
});

这个网址会一直是这样吗?有没有办法从sdk中获取url(未签名)?