Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用AWS S3 SDK for node.js如何返回filebody而不是';承诺{待定}';_Javascript_Node.js_Amazon Web Services_Amazon S3 - Fatal编程技术网

Javascript 使用AWS S3 SDK for node.js如何返回filebody而不是';承诺{待定}';

Javascript 使用AWS S3 SDK for node.js如何返回filebody而不是';承诺{待定}';,javascript,node.js,amazon-web-services,amazon-s3,Javascript,Node.js,Amazon Web Services,Amazon S3,Javascript不是我的头号语言,但是对于应用程序,我尝试从S3存储桶中获取对象。最后,我希望这些图像包含在某种HTML文件中,因此我正在寻找一种方法来创建base64编码字符串 我的函数没有返回字符串,而是返回'Promise{pending}',尽管进行了多次尝试,我还是无法让它工作。这是我目前的职能: async function getS3file() { try{ var image = await s3.getObject({ Bucket:

Javascript不是我的头号语言,但是对于应用程序,我尝试从S3存储桶中获取对象。最后,我希望这些图像包含在某种HTML文件中,因此我正在寻找一种方法来创建base64编码字符串

我的函数没有返回字符串,而是返回'Promise{pending}',尽管进行了多次尝试,我还是无法让它工作。这是我目前的职能:

async function getS3file() {
    try{
      var image = await s3.getObject({
        Bucket: 'Bucketname',
        Key: 'ImageKey'
      }).promise();
      
      return image.Body.toString('base64');
      
    } catch(e) {
      throw new Error('Could not retrieve file from S3')
    }
  }
然后使用

let image = await getS3file();

谢谢这是否意味着我必须将最后一行放在另一个异步函数中?否则它会抛出一个SyntaxError('await仅在异步函数中有效')。是的,await仅在异步函数中可用。或者,在同步函数中,可以使用
getS3file()
let image = await getS3file();