AWS Lambda更新DynamoDB项目

时间:2017-11-13 22:36:28

标签: amazon-web-services lambda amazon-dynamodb

我有一个名为Wishlist的DynamoDB表,以及我正在调用" monitor"的现有DynamoDB项目。

我正在尝试编写一个Lambda函数来更新"监视器"项目如下:

  • 获取用户的登录ID,将@ gmail.com添加到其中,并将其写入新的电子邮件属性

  • 将时间戳写入项目

这是我的代码:

console.log('Loading function');
var doc = require('dynamodb-doc');
var db = new doc.DynamoDB();

exports.handler = function(event, context) 
{
     var username  = event.username;
     var email = event.username+"@gmail.com";
     console.log(username + "," + email);

     var tableName = "WishList";
     var item = {
           "username":username,
           "email":  email,     
     };

     var params = {
         TableName:tableName, 
         Item: item
     };

     console.log(params);
     db.putItem(params, function(err,data){
         if (err) console.log(err);
         else console.log(data);
     });
};

如何阅读现有的"监视器" item,以便我可以用putItem更新它?

1 个答案:

答案 0 :(得分:2)

如果我理解你的问题,你需要:

  • 使用getItem
  • 按键获取现有项目
  • 修改退回的项目
  • 使用putItem
  • 放置修改后的项目

或者,您可以简单地使用updateItem编辑现有项目的属性,或者如果新项目尚不存在则添加新项目。

您可以看到示例代码here