Gra*_*Cat 9 c# http-1.1 http2 grpc asp.net-core
我有两个网络服务 - gRPC 客户端和 gRPC 服务器。服务器是用 .NET Core 编写的,因此对 gRPC 强制执行 HTTP/2。但是,客户端是托管在 IIS 8.5 上的 .NET Framework 4.7.2 Web 应用程序,因此它仅支持 HTTP/1.1。
由于升级客户端需要一些时间,我在想是否可以在服务器端使用 HTTP/1.1 而不是 HTTP/2,但我找不到任何有关如何实现的信息。
是否可以将 HTTP/1.1 用于用 .NET Core 编写的 gRPC 服务器?如果是这样 - 如何?
Mar*_*ell 10
不,您不能在 HTTP 1.1 上使用 gRPC;但是,您可以使用 Grpc.Core Google 传输实现,而不是托管的 Microsoft 位;这针对 .NET Standard 1.5 和 .NET Standard 2.0,因此应该适用于 .NET Core,并使用特定于操作系统的非托管二进制文件 (chttp2) 进行传输。
对于客户端,两者几乎没有区别;只有实际的频道创建变化,在:
GrpcChannel.ForAddress(...)
Run Code Online (Sandbox Code Playgroud)
使用 Microsoft 传输,以及
new Channel(...)
Run Code Online (Sandbox Code Playgroud)
与谷歌传输。所有其余的 API 都是共享的(在 Grpc.Core.Api 中)
| 归档时间: |
|
| 查看次数: |
3971 次 |
| 最近记录: |