【发布时间】:2021-10-13 08:45:32
【问题描述】:
我有一个 grpc 服务,其中包含多个 api(getName、getInfo 等)和一个 grpc 端点,类似这样,
configuration-dev-grpc.kmc-default.us-west-2**.com:443
我创建了一个 graphql 项目,如何通过该端点将 graplql 与 grpc 服务连接起来,或者我需要以其他方式进行连接?
【问题讨论】:
我有一个 grpc 服务,其中包含多个 api(getName、getInfo 等)和一个 grpc 端点,类似这样,
configuration-dev-grpc.kmc-default.us-west-2**.com:443
我创建了一个 graphql 项目,如何通过该端点将 graplql 与 grpc 服务连接起来,或者我需要以其他方式进行连接?
【问题讨论】:
gRPC 和 GraphQL 通常被认为是替代方案,但是,如果我们将 gRPC 视为只是过程调用,那么没有理由不能针对 gRPC 客户端实现 GraphQL 服务器来为 GraphQL 客户端提供服务。
至少有一组有解决方案:
https://github.com/ysugimoto/grpc-graphql-gateway
如果您控制 gRPC 服务器,最好在其旁边实现 GraphQL 服务器,即直接针对它提供的任何 API。这样做可以避免 gRPC 客户端和服务器之间的网络以及 Protobuf (un) marshaling。
【讨论】: