2008-11-14 151 views
5

我正在制作一个程序,通过python套接字检索大量数据,然后在信息完成发送时立即断开连接。但我不知道如何做到这一点通过python套接字接收数据

所有在网络上的例子是TCP客户,他们有

while 1: 
    data = sock.recv(1024) 

,但是这将创建一个外观无限循环通过套接字接收数据,并它不是?

我需要计算消息的大小,并以缓冲区大小的增量循环,以获取完整消息。在信息发送完成后,我想断开连接,但我认为连接将从另一端关闭。 任何帮助将是不错

感谢

回答

16

你可能已经错过了那些examples的一个非常重要的组成部分 - 即按照行“的recv()”呼叫:

while 1: 
    data = conn.recv(1024) 
    if not data: break 
    conn.send(data) 
conn.close() 
相关问题