我正在尝试创建一个函数,允许客户端从服务器下载文件。下面是代码的相关部分。我已经到了在客户端文件夹中创建同名文本文件的地步,但它只是空的,没有数据。程序到达“接收的文件行”,但没有别的。
客户代码:
elif cmd == "DOWN":
filename = data[1]
print(filename)
client.send(filename.encode(FORMAT))
f = open("client/" + filename, 'wb')
while True:
print("receiving data")
data = client.recv(1024).decode(FORMAT)
if not data:
break
f.write(data)
print("Data: %s", (data))
f.close()
服务器代码:
elif cmd == "DOWN":
file = conn.recv(1024).decode(FORMAT)
f = open("server/"+file, 'rb')
l = f.read(1024)
while (l):
conn.send(l.encode(FORMAT))
print("send data", repr(1))
l = f.read(1024)
f.close()
print("done sending")
输出:
Welcome to the server
> DOWN abc.txt
abc.txt
recieving data
程序进入循环接收数据,没有别的。任何帮助,将不胜感激。谢谢。