为什么 grpc-web 需要特使代理?

Dee*_*ora 7 grpc grpc-web envoyproxy

如果浏览器支持http/2,为什么还grpc-web需要envoy代理?

仅不支持 http/2 的旧浏览器才需要它吗?

小智 7

https://github.com/grpc/grpc-web/issues/347 中回答。为了让 gRPC-Web 正常工作,我们需要向我们公开许多底层传输,但目前跨浏览器并非如此。鉴于当前的浏览器 API 集,我们无法利用完整的 http2 协议。

  • 2020年还需要代理吗?此链接(https://grpc.io/blog/grpc-web-ga/)有一个声明“...一个 JavaScript 客户端库,使 Web 应用程序能够直接与 gRPC 后端服务进行通信,而不需要 HTTP 服务器来操作作为中间人`这让我有点困惑。 (3认同)
  • @pinkpanther 我也对这句话感到困惑,但是当我在同一篇文章中进一步阅读时,它说“拼图的最后一块是服务代理”。从一开始,gRPC-Web 将支持 Envoy 作为默认服务代理,它有一个内置的 envoy.grpc_web 过滤器,您只需几行配置即可应用它。`所以我认为(???)首先句子不正确或至少具有误导性。警告:我只是这个学科的初学者。 (3认同)