gpt4 book ai didi

aws-lambda - 无法从 lambda 调用 AWS DynamoDB DocumentClient 上的 transactWrite

转载 作者:行者123 更新时间:2023-12-03 18:37:50 26 4
gpt4 key购买 nike

我有一个 lambda 函数 (node.js),需要在两个 DynamoDB 表上执行事务。

let ddb = new AWS.DynamoDB.DocumentClient();

ddb.transactWrite(params, function(err, data) {
if (err) {
...
}
else {
...
}
});

当我尝试使用它时收到错误:

ddb.transactWrite is not a function

我也尝试使用 AWS.DynamoDB.transactWriteItems() 得到相同的结果

最佳答案

2019 年 9 月更新

Lambda 运行时环境在过去几个月的某个时间点进行了更新 - 根据 documentation,这些现在是每个运行时环境(包括 SDK)的 SDK 的最新版本。 :

  • nodejs10.x - AWS SDK 2.488.0
  • nodejs8.10 - AWS SDK 2.488.0
  • python3.7 - boto3-1.9.42 botocore-1.12.42
  • python3.6 - boto3-1.7.74 botocore-1.10.74
  • ruby2.5 - AWS SDK 3.0.1

旧帖

来自documentation (强调我的):

The underlying AWS Lambda execution environment includes the following software and libraries.

Operating system – Amazon Linux

AMI – amzn-ami-hvm-2017.03.1.20170812-x86_64-gp2

Linux kernel – 4.14.77-70.59.amzn1.x86_64

AWS SDK for JavaScript – 2.290.0

SDK for Python (Boto 3) – 3-1.7.74 botocore-1.10.74

aws-sdk 的最新版本在撰写本文时,ist 2.382 - Lambda 执行环境中的默认版本是 5 个月大。

我刚刚验证了这一点并且文档是最新的:

console.log("AWS SDK Version " + AWS.VERSION) // AWS SDK Version 2.290.0

DynamoDB 事务已 announced in November 2018 ,也就是大约 3 个月前。

transactWrite 很可能尚未在该版本中实现 - 您可能需要包含自己的。

关于aws-lambda - 无法从 lambda 调用 AWS DynamoDB DocumentClient 上的 transactWrite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54011315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com