我正在使用Python开发TCP客户端,我遇到了下一个问题。我连接服务器,我发送了一些数据,它用预期的数据响应我,但在此之后我自己的应用程序(客户端)发送[FIN,ACK](用wireshark检查)。这是我的客户端应用程序:
try:
sock = socket(AF_INET, SOCK_STREAM)
sock.bind((my_ip,my_port))
sock.connect((sendAddress,sendPort))
sock.send(joinRequest)
joinResponse = sock.recv(18)
print joinResponse
except socket.timeout:
sock.close()
答案 0 :(得分:1)
这是SocketServer的默认行为,接受连接,获取请求,然后关闭连接。
简单的方法是使用while循环来保持连接,你也可以使用sock.settimeout来调整超时