小编Val*_*ale的帖子

s3.getObject().promise() 从不返回任何东西

如果在符合我在 stackoverflow 和 AWS SDK 文档中阅读的所有内容的 Lambda 中使用此代码。

但是,它既不返回任何内容也不抛出错误。代码只是停留在 s3.getObject(params).promise() 上,因此 lambda 函数会超时运行,即使超过 30 秒。我尝试获取的文件实际上是 25kb。

知道为什么会这样吗?

var AWS = require('aws-sdk');
var s3 = new AWS.S3({httpOptions: {timeout: 3000}});    

async function getObject(bucket, objectKey) {
        try {
            const params = {
                Bucket: bucket,
                Key: objectKey
            }
            console.log("Trying to fetch " + objectKey + " from bucket " + bucket)
            const data = await s3.getObject(params).promise()
            console.log("Done loading image from S3")
            return data.Body.toString('utf-8')
        } catch (e) {
            console.log("error loading from S3")
            throw new Error(`Could …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services node.js promise

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

amazon-s3 ×1

amazon-web-services ×1

node.js ×1

promise ×1