gRPC 响应协议降级为Http/1.1

  今天在编写gRPC的集成测试的时候,运行出现以下错误

 Grpc.Core.RpcException : Status(StatusCode="Internal", Detail="Bad gRPC response. Response protocol downgraded to HTTP/1.1.")

  

  出现该问题的原因是请求的时候使用的是HTTP/2.0

AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2Support", true);
AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);

  但是在响应的时候却是接收的HTTP/1.1,只要在接收的时候把Response的版本改为Request的版本一致就行了

response.Version = request.Version;

 

posted @ 2020-12-07 14:11  健忘就忘吧  阅读(1259)  评论(2编辑  收藏  举报