AppSync 中的 DynamoDB ReturnValues UPDATED_OLD
Posted
技术标签:
【中文标题】AppSync 中的 DynamoDB ReturnValues UPDATED_OLD【英文标题】:DynamoDB ReturnValues UPDATED_OLD in AppSync 【发布时间】:2019-09-05 09:32:27 【问题描述】:我正在尝试使用 AppSync 更新 DynamoDb 表中的项目属性。 一旦成功,我想在下一次调用中使用该属性的先前值作为键(我正在使用管道解析器)。
要使用 DynamoDB 实现此目的,您只需将 UPDATED_OLD 设置为返回值。
我找不到任何文档来指定 AppSync 的 DynamoDB 解析器的返回值。 我试过以下。
"version" : "2018-05-29",
"operation" : "UpdateItem",
"key":
"id": $util.dynamodb.toDynamoDBJson("foo")
,
"condition" :
"expression" : "attribute_exists(id)"
,
"update" :
"expression" : "SET bar = :bar",
"expressionValues" :
":bar" : "S" : "$bar"
,
"returnValues": "UPDATED_OLD"
但它的语法无效。
"message": "Unsupported element '$[returnValues]'."
【问题讨论】:
【参考方案1】:returnValues 不是 AppSync 与 DynamoDB 的请求映射模板的有效字段。默认情况下,AppSync 使用 ALL_NEW 参数进行更新。
【讨论】:
我担心是这样的。感谢您确认。希望它会在未来的更新中得到纠正,以使 AppSync 更加可行。 我会将其作为功能请求提交给团队 还是这样吗? @VasileiosLekakis 是否存在与此功能请求相关的 Github 问题?这将是一个有价值的补充 @bingles 我们没有像 AWS Amplify 那样跟踪功能请求,因为 AWS Appsync 的 Github 问题。以上是关于AppSync 中的 DynamoDB ReturnValues UPDATED_OLD的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Appsync 中的解析器获取 dynamodb 中存在的记录总数
Aws Appsync 解析器:如何创建解析器以更新列表映射 (DynaMoDB) 中的项目