如何保持连接客户端的连接监听?在下面的代码中,线程接收数据并回复客户端并断开连接。我想把接收和发送过程放在循环中。我怎么能这样做?
[ { message: 'Invalid JSON payload received. Unknown name "view_id" at \'report_requests[0]\': Cannot find field.',
domain: 'global',
reason: 'badRequest' } ] }
答案 0 :(得分:0)
首先,recv
函数不保证您读取发件人已写入的所有内容。您可能会获得部分数据(例如,发送者可能会发送10KByte,但接收者在首次阅读时可能只收到1.5K)。
其次,send
功能并不保证它会发送您要求的所有内容。如果不是所有内容都已发送,您需要发送其余的答案。
第三,TCP是面向流的。这意味着您需要将一条消息与另一条消息分开。对于基于文本的协议,通常使用“新行”来实现此目的。
全部放在一起。如果您想要持久连接请求,则需要:
如果你想在网络编程中升级,你可能想知道一些非阻塞操作和轮询/选择功能。