问题描述
根据 Microsoft Doc 中的此 post 和此警告部分:
ASP.NET Core gRPC 对与 Azure App 一起使用有额外的要求 服务或 IIS。有关可以在何处使用 gRPC 的更多信息,请参阅 .NET 支持平台上的 gRPC。
我使用上述文档指南在 ASP.Net Core gRPC
中使用 .NET 5
包创建了一个 Grpc.AspNetCore(2.34.0)
服务。
我在 IIS 中托管了我的服务 document
给定错误:
Status(StatusCode="Cancelled",Detail="No grpc-status found on response.")
附加:我在网上搜索并调查了很多问题,但这些问题对我没有帮助。仍然,我有这个错误。我想对这个操作有误解或遗漏的问题。
我的主要问题:实际上此时可以在 IIS 中托管 ASP.NET Core Grpc 服务。
OS
:Windows Server 2019 版本 1809 内部版本 17763.1697
IIS
:版本 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.")
在 catch 块中。
解决方法
Windows Server 2019 - 尚不支持使用(进程内).NET 5 托管带有 IIS 的 gRPC!