ProtoBuf编写网络版本通讯录时遇到问题及解决方案

问题

使用PB编写网络版本通讯录时,遇到这样的问题:

客户端发送序列化后的Request请求给服务端,想要服务端提供相应的响应,但服务端并没有提供相关的响应,并且客户端会处于阻塞状态。如以下情况所示:

解决方案

遇到这样的问题,首先检查是否有相关的头文件没有被包含

比如:使用了std::random_device、std::mt19937、std::uniform_int_distribution来产生随机数,但未包含<random>头文件;使用了std::stringstream,但未包含<sstream>头文件, 这也是导致服务端无法处理请求的一方面原因。所以如果没有包含包含对应的头文件即可。

其次检查using namespace httplib声明是否在using namespace std 的前面(主要原因),如果不是,在全局作用域可能会导致命名冲突,进而导致服务端无法处理请求,所以要进行调整。要确保客户端和服务端程序中 using namespace httplib声明在using namespace std 的前面。

如果服务端任然出现阻塞的情况,将XShell重启,重新make程序即可

最终的结果如下:

相关推荐
liguojun20251 小时前
篮球馆自动计时收费系统:从规则配置到自动结算的全流程拆解
java·大数据·运维·人工智能·物联网·1024程序员节
Promise微笑1 小时前
红外分辨率 160×120、320×240、384×288 与 640×480实战选型指南
大数据·运维·人工智能·物联网
云飞云共享云桌面2 小时前
单机建模卡顿运维繁琐!中小型机械制造厂云飞云 3D 云桌面落地
运维·服务器·网络·3d·自动化·电脑·负载均衡
zandy10113 小时前
体验家 XMPlus 批量操作与自动化工作流引擎:让大规模运营从手动执行走向规则驱动
大数据·运维·自动化
湿韵轮回4 小时前
LangChain LCEL,用 | 串联AI的魔法语言
服务器·人工智能·langchain
Sagittarius_A*4 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
网络小白不怕黑5 小时前
监控httpd状态
服务器
阿米亚波6 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
网络小白不怕黑6 小时前
12.DHCP服务搭建
linux·运维·服务器·网络
日取其半万世不竭6 小时前
云服务器迁移怎么少停机?DNS 切换前后的完整清单
运维·服务器