背景
在之前的文章中,我们成功实现了 gRPC-Web 项目,通过 HTTP/1.1 协议调用 gRPC 服务。但在某些场景下,我们可能需要使用 WebSocket 来调用 gRPC 服务,比如:
在之前的文章中,我们成功实现了 gRPC-Web 项目,通过 HTTP/1.1 协议调用 gRPC 服务。但在某些场景下,我们可能需要使用 WebSocket 来调用 gRPC 服务,比如:
本文记录了一个完整的 gRPC-Web 项目的实现过程,包括使用 Go 实现 gRPC 服务端(包含流式服务)、使用 TypeScript 通过 gRPC-Web 调用服务,以及通过 Envoy 代理的完整配置。在整个实现过程中,我们遇到了多个技术挑战并逐一解决,希望这篇文章能帮助其他开发者避免类似的坑。