【发布时间】:2019-04-04 23:43:29
【问题描述】:
如果这是一个愚蠢的问题,我深表歉意,但我似乎找不到答案。我是开发 Alexa 技能的新手,所以请原谅我的无知。
基本上,我想将同一家庭中的多个用户(孩子)的数据保存到 DynamoDB 表中。我遇到的问题是“保存属性”过程似乎只有在 DynamoDB 表使用 userId 作为分区键时才有效。这会导致表中只存在一条记录,并且每次打开技能时,数据都会被当前用户覆盖。
如果 userId 始终相同,我如何让 lambda 函数在表中创建另一条记录?
目前,我正在使用 Node.js 并保存一个字符串(名称)和一个数组(项目)。但正如我之前提到的,每次启动技能时,值都会被覆盖。
提前致谢。
【问题讨论】:
-
你所有的用户都有相同的ID吗?我认为您应该阅读this 以了解有关分区键的更多信息。
-
技能启动时会询问您的姓名。理想情况下,我希望每个名称都是表中的唯一条目。现在,我知道可能有多个同名用户,但为了简单起见,我现在只是走这条路。 userId 始终与自动提供的相同,并且与我的 Alexa 帐户相关联(据我了解)。我会去看看,谢谢。
-
另外,如果我使用分区键作为“userId”以外的任何内容创建表,该技能将失败,并说“请求的技能的响应有问题”。
标签: node.js aws-lambda amazon-dynamodb alexa