私はクライアントが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
だから私の心の中には、サーバーが送信してプリントアウトし、それが起こっていないすべてのものを受けるべきです。それを人生にもたらす方法は誰でも知っていますか?
が正確に何が起こるん本当に正常に動作しますか? –
それは動作します、私はサーバーにメッセージを送信することができますし、サーバーがそれを受信しますが、私はクライアント側でメッセージを受信できません。 Btwは、テルネットクライアントで動作します。 – Fireship
そして前にそこにあった データがない場合: 印刷 'エラー' それは無限に印刷を開始します – Fireship