我有一个部署在 Lambda (nodejs6.10) 上的无服务器应用程序,可以从我的 DynamoDB 创建和读取用户,但是,我在尝试对特定属性执行更新时遇到问题。
基本上,我的表有一个 userId 键和两个名为 email 和 score 的属性。
应用程序检测是否提供了推荐代码 (userId),如果是,则应将其分数增加 1。以下是我传递给 dynamoDb.update 函数的参数。
if (refcode) {
console.log("A referral code: " + refcode + " was detected");
const params = {
TableName: USERS_TABLE,
Key: {
userId: refcode
},
UpdateExpression: "set score = score + :val",
ExpressionAttributeValues: {
":val": 1
},
ReturnValues: "UPDATED_NEW"
};
console.log(params);
dynamoDb.update(params, (error, result) => {
console.log("Checking for error...");
if (error) {
console.log(error);
res.status(400), json({ error: "Could not GET user" });
}
console.log("Checking …Run Code Online (Sandbox Code Playgroud)