我正在开发使用AWS服务作为后端的Android应用程序。现在,当将项目添加到DynamoDB表时,我正在Lambda函数中执行某些操作。但是我无法在lambda函数中检索属性值。这是我到目前为止所做的。
我从Mobile Hub应用程序创建了一个DynamoDB表。
表名是项目。
在lambda函数中,我试图像这样检索项目表的名称值。
if (record.eventName == 'INSERT') {
var name = record.dynamodb.item.Name.S
}
但这是说名称未定义。我该如何解决?
我也尝试过。
record.dynamodb['thegoodyardandroid-mobilehub-330286608-item'].Name.S
不起作用
答案 0 :(得分:1)
您从发电机db流中获取的事件记录在这里:https://docs.aws.amazon.com/lambda/latest/dg/eventsources.html#eventsources-ddb-update
关键是没有Item
键。对于INSERT
事件,只有一个NewImage
键。
因此,您需要这样做:
var name = record.dynamodb.NewImage.Name.S