设计 GraphQL API - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

设计 GraphQL API

如果您要构建 GraphQL API,您需要了解一些概念,如架构设计以及如何连接到数据源。

在本节中,我们向您展示如何从头开始构建架构、自动调配资源、手动定义数据源以及使用 GraphQL 解析程序连接到数据源。Amazon也可以 AppSync如果您有现有的 Amazon DynamoDB 表,从头开始构建架构和解析程序。或者使用或没有预先存在的模式构建整个后端. 此外,Amazon有点 AppSync 提供引导式模式创建向导建议 GraphQL 或Amazon用户 AppSync 用户。

GraphQL 架构

每个 GraphQL API 都由单个 GraphQL 架构定义。GraphQL 类型系统描述 GraphQL 服务器的功能并用于确定查询是否有效。服务器的类型系统称为该服务器的架构。它由一组对象类型、标量、输入类型、接口、枚举和联合组成。它定义流经 API 的数据的形状以及可以执行的操作。GraphQL 是强类型化协议,所有数据操作都将对照此架构进行验证。

数据源

数据源是你的资源Amazon账户 GraphQL API 可以与之交互。Amazon支持 AppSyncAmazon Lambda,Amazon DynamoDB,关系数据库(Amazon Aurora 无服务器),Amazon OpenSearch Service和 HTTP 端点作为数据源。

网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon您可以将 AppSync API 配置为与多个数据源交互,使您能够在单个位置聚合数据。Amazon可以使用 AppSyncAmazon您的账户中已经存在或者可以代表您从架构定义中预配置 DynamoDB 表的资源。

解析程序

GraphQL 解析程序将类型的架构中的字段连接到数据源。解析程序是用于完成请求的机制。Amazon可以 AppSync 能自动创建和连接解析器来自架构或创建架构并从现有表中连接解析器无需编写任何代码。

中的解析程序AmazonAppSync 使用编写的映射模板语言 Apache Velocity 模板语言 (VTL)将 GraphQL 表达式转换为数据源可以使用的格式。

有关编写解析程序的入门教程式的编程指南,请参阅解析程序映射模板编程指南以及可以在中找到编程时可以使用的帮助实用程序解析程序映射模板上下文参考.Amazon 您可以在从头开始编辑或编写时使用 AppSync 内置的测试和调试流程。有关更多信息,请参阅测试并调试解析程序