【发布时间】:2019-03-21 19:44:25
【问题描述】:
我在为/弄清楚如何正确地将服务器端验证添加到我的 AppSync GraphQL 突变中时遇到问题。
本质上,我使用 AWS 控制面板来定义我的 AppSync 架构,因此为我创建了 DynamoDB 表,以及为数据设置的一些基本解析器。
不,我需要实现以下目标:
- 我有一个玩家有
inventory和gold - 玩家用
item_id调用purchaseItem突变 - 一旦调用此突变,我需要在解析器中执行一些检查,即检查
item_id是否存在关联 DynamoDB 的 int 'Items' 表,检查玩家是否有足够的金币,再次在关联 DynamoDB 的“玩家”表中,如果因此,通过将项目添加到他们的库存和新的减去黄金数量来写入PlayersDynamoDB 表。
我认为实现这一目标并降低成本和延迟的最有效方法是对 AppSync 使用“Apache Velocity”模板语言?
很高兴看到此示例展示如何查询/写入 DynamoDB、处理错误和正确解决突变。
【问题讨论】:
-
感谢您的提问。目前,AppSync 解析器针对单个数据源执行。您可以嵌套查询以在本文中概述的多个解析器之间传递上下文:hackernoon.com/… 我们正在评估在不更改架构结构的情况下执行此操作的方法,我将为您的请求 +1。请继续关注未来的最新 AppSync 公告。
-
@LisaMShon 感谢您将此转发给 AppSync 团队。同时,这样的解决方案可行吗? stackoverflow.com/questions/52903482/…
标签: amazon-web-services amazon-dynamodb aws-appsync vtl apache-velocity