我想用 GraphQL(首选阿波罗服务器)替换我所有的 REST API。我很清楚如何在单体应用程序中使用 GraphQL,但不清楚如何在微服务中使用。
主 API 服务器由多个微服务组成,其中每个微服务都公开自己的 REST API,中央 API 服务器通过这些 API 与其进行通信。我想用 GraphQL 替换所有这些 REST API,因此我将微服务作为嵌套的 GraphQL 服务器通过 GraphQL 而不是 REST 相互通信。
我面临的问题是如何根据主 GraphQL 服务器的解析器中接收到的属性轻松为微服务构建 GraphQL 查询字符串。没有办法告诉 GraphQL 返回微服务的所有字段。最好的方法是将主查询的一部分简单地转发到微服务。
有任何想法吗?你认为 REST 是否仍然比 GraphQL 更适合微服务?