【问题标题】:lambda not updating DynamoDB data on first run but updates on second runlambda 在第一次运行时不更新 DynamoDB 数据,但在第二次运行时更新
【发布时间】:2021-10-20 04:44:02
【问题描述】:

我有一个 lambda 函数,它正在更新 DynamoDB 表中的数据(基于特定的用户属性,我想为该用户更改一些值。)。当它第一次执行时它不起作用,但在第二次执行时它会更新数据。它可以交替工作。一次更新,一次不更新。这可能是什么原因。

根据特定的用户属性,我想为该用户更改一些值。

【问题讨论】:

标签: node.js amazon-web-services aws-lambda amazon-dynamodb


【解决方案1】:

这听起来像是在使用或不使用await.promise() 时出现语法错误

根据经验,当你这样称呼它时,也会出现你描述的问题:

await nameOfDb.update(params, function (err, data) {   
      if (err) console.log(err, err.stack);   
      else     console.log(data); 
}).promise();

这是在doc 中调用.update() 的推荐方式

所以我更喜欢使用

Try {
    await nameOfDb.update(params).promise();
} 
catch (e) {
    console.log(e);
}

在使用.update()时,它总是按我希望的方式工作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    • 2021-01-20
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    相关资源
    最近更新 更多