0

我是 GraphQL、Apollo、AWS S3 和 Redux 的新手。我已经阅读了每个教程的教程,并且我熟悉 React Native、Node、Heroku 和 Mongo。我无法理解以下内容:

  • 如何使用 React Native 为移动设备托管“GraphQL 服务器”?
  • 我可以使用 Node 创建 GraphQL 服务器并将其托管在 AWS S3 上吗?
  • 如何在我的 React Native 代码中使用 Apollo/GraphQL 获取该数据并使用 Apollo/Redux 在本地存储该数据?
  • 我是否必须从一开始就使用 Graphcool 作为端点?我要做的就是在应用程序加载时从我的数据库中提取数据(不希望对其进行流式传输,以便我能够离线使用数据)。

我应该从哪里获得更好的理解?

4

1 回答 1

1

在你探索新领域的过程中,我有几条评论要给你。

GraphQL 只是与数据库对话的查询语言。因此,您可以自由运行任何类型的 api(在服务器、无服务器等上),这些 api 将使用 graphql 来接受 graphql 查询/突变并与您的数据库交互。

GraphCool 是一个“生产就绪的后端”,基本上是后端即服务。因此,您不必担心运行服务器(因为我相信它们在无服务器基础架构上运行大部分内容)或管理数据库所在的位置。

您可以使用 AWS Lambda 在 AWS EC2 或无服务器上运行 HTTP 服务器。(或与 Google 或 Azure 相同的风格)。无论您决定使用什么来接受请求,您的端点都将接受 graphql 查询字符串,然后对 db.xml 进行处理。AWS S3 更多的是静态存储。您可以在其中存储要检索的文件或可以提取的脚本,但 S3 可能不是您希望运行任何类似服务器的代码的地方。

Apollo 将是一个在您的前端使用的工具,可以轻松地与您的 graphql 服务器进行交互。反应阿波罗

Apollo/Redux 可以帮助您管理整个应用程序的状态。您只需在加载时将数据加载到应用程序状态,然后与该状态进行交互,而无需再进行任何外部调用。

希望这会有所帮助。

于 2017-07-13T20:12:18.247 回答