我有一个即时消息应用程序,客户端用python编写。连接到服务器在Python中异步接收TCP数据包
代码:
def connect(self, host, port, name):
host = str(host)
port = int(port)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
s.send('CONNECT:' + name)
print s.recv(1024)
return s
则S将被存储在一个self.socket。
这里是从服务器接收tcp数据包并将其打印到命令行的功能。
def chat(self):
while True:
data = self.socket.recv(4096)
if not data:
pass
else:
print data
所以在我的脑海里应该得到的一切服务器发送和打印出来,但它不发生的情况。任何人都知道如何实现它?
当您尝试运行究竟是怎样呢? –
它的工作原理,我可以发送消息到服务器和服务器接收它,但我不能接收消息在客户端。 顺便说一句,它与一个telnet客户端。 – Fireship
并且之前有 如果不是数据: 打印'错误' 并且它开始无限打印 – Fireship