node.js - 如何从 lambda 中的事件获取文件的 s3 存储桶名称和 key

标签 node.js amazon-s3 aws-lambda

我们在 lambda 函数上设置了一个触发器,并希望在将最新文件放入 S3 存储桶时抓取该文件。文件名将更改。我们想从事件中获取文件对象,但不知道如何获取。

现在,我们将直接文件名作为变量写入 lambda 函数中,并在本地进行测试。它似乎有效,但我们想让我们的 lambda 通用并使用传入的事件参数获取文件。基本上,我们需要交换这两行并使它们通用。

const bucket = 'bucket-12345';
const key = 'testXML.xml';

感谢您的帮助。

最佳答案

看看this example :

exports.handler = function(event, context, callback) {
    var bucket = event.Records[0].s3.bucket.name;
    var key = event.Records[0].s3.object.key;
    …
}

关于node.js - 如何从 lambda 中的事件获取文件的 s3 存储桶名称和 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53891128/

相关文章:

javascript - node-nock 模拟路径中带有问号的 uri

amazon-web-services - 无法删除包含错误字符的 Amazon S3 key

amazon-web-services - 调用 Lambda 函数的 aws boto3 unittest 函数

node.js - AWS 无服务器函数 : Can't access methods of aws-sdk objects. 。 ."is not a function"

javascript - 如何正确使用 JWT 和 Node

node.js - 无法替换到目录/var/lib/docker/overlay2/if2ip5okvavl8u6jpdtpczuog/merged/app/node_modules/@ampproject/remapping with file

javascript - 覆盖 require 从 root 启动并检查 Node 模块而不更改其名称

amazon-web-services - 用于移动到冰川的对象的 AWS Lambda

python - 如何通过 Python Boto3 将数据加载到 Amazon Redshift?

amazon-web-services - 如何每次从s3下载新上传的文件到ec2