spe*_*741 5 google-chrome http2 grpc
发现 gRPC 后,我偶然发现了这篇博文
为什么不是每个人都已经在他们的 SPA 中使用 gRPC?
传统上不可能从基于浏览器的应用程序中使用 gRPC,因为 gRPC 需要 HTTP/2,并且浏览器不公开任何让 JS/WASM 代码直接控制 HTTP/2 请求的 API。
但是有一个解决方案!gRPC-Web 是 gRPC 的扩展,使其与基于浏览器的代码兼容(从技术上讲,它是通过 HTTP/1.1 请求执行 gRPC 的一种方式)。gRPC-Web 还没有流行起来,因为没有多少服务器或客户端框架支持它……直到现在。
自 3.0 版本以来,ASP.NET Core 提供了出色的 gRPC 支持。现在,在此基础上,我们将在服务器和客户端上发布对 gRPC-Web 的预览支持。如果你想深入了解细节,这里是 James Newton-King 的优秀拉取请求,它全部实现。
这里有一些很好的信息,但此时该帖子已经发布了大约一年。
最近,微软还大力推动了 .NET 和 Blazor 技术。
看起来grpc-web维护得很好并且总是添加很多语言支持,所以这是需要关注的……但据我所知,grpc-web 仍然是为在 HTTP1.1 上运行而构建的?
对我来说,另一个问题仍然存在,为什么浏览器 API 不支持 HTTP2,我找不到任何相关文档。
我很想开始使用 gRPC,但也担心它可能带来的缺点。
感谢您对我缺乏理解的任何解释。
注意,这个对SO略微相关的问题在这里,对此的答案是没有完全全面和更老。
我在我的项目中使用了 grpc 并了解您的问题。前两个问题可以通过引自 grpc.io 的引用来回答,然后进行一些详细说明。
- 对我来说,另一个问题仍然存在,为什么浏览器 API 不支持 HTTP2,我找不到任何相关文档。
- 看起来 grpc-web 维护得很好并且总是添加很多语言支持,所以这是需要关注的东西......但据我所知,grpc-web 仍然构建为在 HTTP1.1 上运行?
目前不可能在浏览器中实现 HTTP/2 gRPC 规范 3,因为根本没有浏览器 API 对请求进行足够细粒度的控制。例如:没有办法强制使用 HTTP/2,即使有,原始 HTTP/2 帧在浏览器中也无法访问。gRPC-Web 规范从 HTTP/2 规范的角度出发,然后定义差异。 报价参考
- 我很想开始使用 gRPC,但也担心
它可能带来的缺点。
我也想谈谈这个话题。为什么要使用 gRPC?这是关于 Http2 和 gRPC 的速度吗?Http1.1是旧技术吗?今天,REST 协议适用于 Http1.1。如果他们开始使用Http2.0,这些接口不会有任何变化。此外,如果您不使用流式处理,REST 比 gRPC 更快。gRPC 在速度方面具有更好的优势。
下面,我从 GRPC-WEB 链接了支持的 RPC 类型
| 归档时间: |
|
| 查看次数: |
1709 次 |
| 最近记录: |