根据微软文档中的这篇文章和这个警告部分:
ASP。. NET Core gRPC对Azure应用程序有额外的要求服务或IIS。有关gRPC可以在何处使用的更多信息,请参见. net支持平台上的gRPC。
我使用上面的文档指南在.NET 5
和Grpc.AspNetCore(2.34.0)
包中创建了一个ASP.Net Core gRPC
服务。
我把我的服务托管在IIS中作为这个文档
我的问题:我从客户端调用RPC
方法时出现错误。
给错误:
Status(StatusCode="Cancelled", Detail="No grpc-status found on response.")
另外
我在网上搜索和调查了很多问题,但这些问题对我没有帮助。但还是有这个错误。我猜是对这个动作的理解有误或遗漏了问题。
我的首要问题 :实际上是可能的托管ASP。. NET Core Grpc Service .
OS
: Windows Server 2019 Version 1809 Build 17763.1697
IIS
: Version 10.0.17763.1
客户机代码:
using var channel = GrpcChannel.ForAddress("https://192.168.13.155");
var client = new ProccessMessage.ProccessMessageClient(channel);
try
{
var result = client.GetMessage(new Request { Name = "Message" });
}
catch (RpcException ex)
{
string message = ex.Message;
}
我得到这个异常:Status(StatusCode="Cancelled", Detail="No grpc-status found on response.")
in catch block.
Windows Server 2019-目前还不支持使用。net 5来承载带有IIS的gRPC !
参考:在iis中提供grpc服务或作为app服务