c++ - gRPC C++ 错误代码 14:无法连接到所有地址
问题描述
我第一次尝试使用适用于 Linux 内核的 Windows 子系统和 CLion 作为 IDE(在 Windows 上)来实现 gRPC 服务器/客户端。我的代码除了此通信失败之外没有任何其他错误/问题。
以下代码行
if(status.ok()) {
cv::imshow("Rotated image", decrypt_img);
} else {
std::cout << status.error_code() << " : " << status.error_message() << std::endl;
}
产生以下消息
14 : failed to connect to all addresses
解决方案
这是来自 grpc 的一种通用错误消息,可能有多种原因。根据我的经验,它可能是以下情况之一:
- 您的服务器没有运行(或者您忘记调用
grpc::ServerBuilder::BuildAndStart
或者您一直没有启动您的服务器应用程序)。 - 第一次运行服务器时,Windows 防火墙应该询问您是否要允许您的应用程序访问网络(我不记得实际的措辞)。你当然想接受这一点。
- 您在客户端应用程序中指定了错误的地址(即与您在服务器应用程序中设置的地址不同
grpc::ServerBuilder::AddListeningPort
)
不知道您的实际服务器和客户端代码,这些只是我可以根据我对 grpc 的经验做出的假设。
推荐阅读
- typescript - JSPlumb 和 JSPlumb 浏览器 UI 在 Angular SSR 中不起作用,但在 localhost 中起作用
- linux - 评估字符串中的变量
- php - 如何在php中使用继承来实例化带有函数的函数
- amazon-web-services - 授予另一个帐户与 s3 存储桶所有者相同的访问权限
- ios - 如何在 xcode 中管理版本控制配置?
- reactjs - 如何在 react-router-dom@v6 中使用私有路由
- r - 当应用程序托管在 shinyapps.io 上时,闪亮的应用程序 pdf 输出行距会发生变化
- mysql - 执行更新或删除查询时,Mysql 多次随机崩溃
- python - 如何在 Power BI 中显示使用 Plotly(在 Python 上)制作的桑基图?
- flutter - 在 Dart 的“forEach”和“for”中使用 async/await