【发布时间】:2021-03-11 10:10:03
【问题描述】:
异常信息:
Grpc.Core.RpcException: 'Status(StatusCode="Unavailable", Detail="无法连接到所有地址", DebugException="Grpc.Core.Internal.CoreErrorDetailException: {"created":"@1606657072.668000000", "description":"无法选择子频道","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\client_channel.cc","file_line":4166,"referenced_errors ":[{"created":"@1606657072.668000000","description":"连接所有地址失败","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\ client_channel\lb_policy\pick_first\pick_first.cc","file_line":398,"grpc_status":14}]}")'
我创建了一个example on GitHub,如果你成功解决了这个问题,你可以轻松地调整、使用它并回答这个问题。
...
我发现问题出在我自己的证书上,我无法创建自己的作品,尝试了多种组合。
我已使用此示例生成我的证书:How to enable server side SSL for gRPC?
并在此示例中对其进行了测试:https://github.com/angelagyang/GRPCProtobufExample
【问题讨论】:
-
不,没有适用于这种情况的答案。
-
您是否打算使用客户端身份验证 (mTLS)? (您的问题标题仅提及一个证书)
-
对于初学者,我需要任何使用 HTTPS 的解决方案,首先是最简单的解决方案,然后在此基础上进行构建。我需要这个例子才能成功使用 HTTPS。
-
我的目标是拥有一个可以连接到我的服务的应用程序。我不希望通过用户干预来计算该秘密,因为它需要在任何用户干预之前和在任何 PC 上工作,而无需在该设备之前安装任何东西,而且我还希望能够使用我自己的不受信任的证书CA,我不需要那个。是一种软件更新服务,类似于click-once的软件更新解决方案...
标签: c# .net grpc .net-5 .net-framework-4.8