您似乎可以编写 Javascript,但只能通过添加新的 Lambda 函数来实现,这会增加应用程序的成本和复杂性。我只是好奇为什么会这样,因为 VTL 似乎不太受欢迎,而且它不是我熟悉的语言。
学习 VTL 与采用 Lambda javascript (Node.js) 路线的优缺点有助于深入了解。
你是对的,这就是为什么他们去年发布了对 JavaScript 解析器的支持。
虽然 JavaScript 仅支持管道解析器,但上周它发生了变化,现在所有类型的解析器都支持它:
https://aws.amazon.com/about-aws/whats-new/2023/08/aws-appsync-javascript-all-resolvers-graphql-apis
值得注意的是,它们有很多限制,包括:
这是因为AppSync解析器被设计得简单快速,如果你想使用一些复杂的逻辑,那么你需要坚持使用AWS Lambda作为解析器
虽然 AWS Lambda 更强大并且几乎没有限制,但它更昂贵(JS 解析器是免费的)并且增加了更多延迟,因为 JS 解析器在 AppSync 本身中执行,而不是使用单独的 AWS 服务 Lambda