使用 Apollo 4 从 API 到 API 的 Apollo 查询和变更

问题描述 投票:0回答:1

我很难在服务器之间进行 Apollo 突变。

今天我花了很长时间寻找有关在使用

@apollo/server
构建的两个 API 之间传递数据的最佳实践的示例或建议。一种是静态 Express 服务器,一种是使用
@as-integrations
依赖项的 AWS Lambda 函数。 静态服务器支持我的企业的消费者站点,并且将是客户端突变数据的第一个接收者,然后将数据传递到我的 CRM 的 lambda 函数。对我来说很重要的是,数据首先进入静态服务器,然后进入无服务器功能。 我的第一个想法是在静态服务器中的解析器中创建一个
ApolloClient
实例,然后向 lambda 函数发出请求,但我遇到了依赖问题,因为我没有在我的服务器上安装 React。我了解在客户端中使用
ApolloClient
的易于集成性,但我仍然应该能够在服务器中创建客户端以进行 API 到 API 通信,对吧? 到目前为止,我找到的大部分信息都解释了如何使用 Apollo 的方法发出 REST 请求,但这是 API 之间通信的唯一/推荐方式吗?感谢您提供的任何见解或帮助!

amazon-web-services express server graphql apollo
1个回答
0
投票

你不需要任何 React 的东西来使用 Apollo Client。您想使用

client.query()
而不是
useQuery
(后者是一个 hook,用于 React 应用程序。这种模式在 Apollo 客户端文档中没有特别详细的记录,只有 一个示例,但这就是在服务器-服务器情况下必须使用的模式。

client.query
返回一个承诺,因此您必须在使用结果之前让它解析。

client
  .query({
    query: gql`
      query MyQuery {
        id
        more fields…
      }
    `,
  })
  .then((result) => console.log(result));
© www.soinside.com 2019 - 2024. All rights reserved.