【问题标题】:Get AWS S3 Upload URL - NodeJs AWS-SDK获取 AWS S3 上传 URL - NodeJs AWS-SDK
【发布时间】:2024-04-16 14:55:02
【问题描述】:

我很确定我在这里遗漏了一些非常明显的东西,但是:

我正在使用aws-sdk 将文件上传到 s3 存储桶,如下所示:

const awsURL = await s3.upload(params, (err, data) => {
    if (err) {
        console.log(err);
        return null;
    }
    console.log(`File uploaded successfully. ${data.Location}`);
    return data.Location;
});
return awsURL;

我能够成功记录上传 url,但是返回的 awsURL 是一个数组,而不是 data.Location 值 - 不应该从回调中返回 data.Location 吗?

【问题讨论】:

    标签: javascript node.js async-await promise aws-sdk


    【解决方案1】:

    转换s3.upload 以返回一个承诺:

    const data = await s3.upload(params).promise(); // this line
    console.log(`File uploaded successfully. ${data.Location}`);
    return data.Location;
    

    【讨论】: