我正在尝试使用套接字将多个图像文件从客户端发送到服务器。我的问题是我无法让 stoppbit(或 word)工作。
客户:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("server",port))
#grab image ...
s.send(imagedata)
s.send("#FINISH#")
s.close()
服务器:
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind(("",port))
s.listen(1)
c,a = s.accept()
while True:
imagedata = c.recv(1024)
if not imagedata or "#FINISH#" in imagedata:
komm.close()
break
image = image + imagedata
s.close()
#remove stoppword and save image ...
这只是一个简单的示例,但您可以看到问题所在。我无法获取“#FINISH#”,因为第二次发送(客户端)将字符串(有时)附加到图像数据。我知道这是因为recv 的bufsize。我该怎么做?