启动你的第一个 GraphQL API - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

启动你的第一个 GraphQL API

本部分介绍如何使用Amazon AppSync 控制台配置和启动 GraphQL API。

启动架构

该Amazon AppSync 向导允许您使用架构创建 API,这些架构定义了由 Amazon DynamoDB 表支持的模型。

我们将创建一个活动应用程序,用户可以在其中创建活动(例如,“去看电影” 或 “爸爸妈妈吃晚饭”)。此应用程序演示了如何在 Amazon DynamoDB 中保留状态的情况下使用 GraphQL 操作。

要开始使用,您需要定义架构。

创建 API
  1. 登录 Amazon Web Services Management Console并打开 AppSync 控制台

    1. Dashboard (控制面板) 中,选择 Create API (创建 API)

  2. 确认已选择活动应用程序。如果未选中,请选择它,然后选择 Start (开始)

  3. 输入 API 的名称。

  4. 选择 Create(创建)

浏览控制台

在部署架构并预配置资源后,您可以在 Amazon AppSync 控制台中使用 GraphQL API。您看到的第一个页面是 Queries (查询),其中包含基本查询和更改。

Queries (查询) 页面是控制台中包含的内置设计器,用于编写并运行 GraphQL 查询和更改,包括自检和文档。运行查询和更改中包含了这一点。

架构设计器

在控制台的左侧,选择 Schema (架构) 查看设计器。设计器已加载了您的示例事件架构。代码编辑器有检查错误的功能,您在编写自己的应用程序时也可以使用。

在控制台的右侧显示已创建的 GraphQL 类型,以及不同顶级类型(例如查询)的解析程序。向架构添加新类型(例如type TODO {...})时,您可以为您Amazon AppSync 预置 DynamoDB 资源。其中包括可与您的 GraphQL 数据访问模式进行最佳匹配的适当主键、排序键和索引。如果您选择顶部的 Create Resources (创建资源),并从菜单中选择这些用户定义的类型之一,即可在架构设计中选择不同字段选项。现在还不必进行选择,但将来设计架构时可以试一下。

解析程序配置

在架构设计器中,选择字段右侧的某一个解析程序。会打开一个新的页面。这个页面会展示解析程序的经过配置的数据源(控制台的 Data Sources (数据源) 选项卡上有完整列表)以及关联的 Request (请求)Response Mapping Template (响应映射模板) 设计器。针对常见使用案例提供了示例映射模板。您还可以在此处配置自定义逻辑,例如解析 GraphQL 请求中的参数、对客户端的分页令牌响应以及向 Amazon Serv OpenSearch ice 发送的自定义查询消息。

函数和数据源

在主导航窗格中,选择 Functions (函数)。列出函数列表和它们附加到的数据源。函数是可以针对数据源运行的单操作。函数包含请求映射模板响应映射模板。之前在示例架构中展示的解析程序称为单元解析程序。它们直接附加到数据源上。您也可以创建管道解析程序,其中包含在您的 GraphQL 字段上按顺序运行的一个或多个函数。管道解析程序使您能够在单个网络请求中对一个或多个数据源运行操作。您可以在不同的解析程序之间重用逻辑,以及在单个解析程序中混合或匹配数据源以用于不同的使用案例(例如授权或数据聚合)。有关更多信息,请参阅管道解析程序

设置

Settings (设置) 选项卡上,您可以配置 API 的授权方法。有关这些选项的更多信息,请参阅安全

注意:默认授权模式为 API_KEY,使用 API 密钥测试应用程序。但是,对于生产 GraphQL API,您应该使用一种更强的授权模式,例如 Amazon Cognito 身份池或用户池。Amazon Identity and Access Management关更多信息,请参阅安全性

集成

集成页面总结了设置 API 的步骤,并概述了构建客户端应用程序的后续步骤。要找到此信息,请在Amazon AppSync 控制台左侧的导航窗格中选择您的Amazon AppSync 应用程序的名称。在 “入门” 窗格中,找到名为 “与您的应用程序集成” 的部分。本页详细介绍了如何使用 AmazonAmplify 工具链自动执行通过配置和代码生成将 API 与 iOS、Android 和 JavaScript 应用程序连接的过程。Amplify 工具链提供对从您的本地工作站构建项目的完全支持,包括 GraphQL 预置和 CI/CD 所用的工作流。

此页面还列出了用于测试 end-to-end 体验的示例客户端应用程序(例如 iOS 等)。 JavaScript您可以克隆并下载这些示例,以及您开始使用所需要的配置文件(包含终端节点 URL 等必要信息)。按照Amazon Amplify工具链上的说明运行您的应用程序。