一、文件上传/下载
1、文件上传/下载
学习了socket套接字,我们现在可以写一个文件上传/下载的程序,如下示例:
服务端代码:
import socket
import json
server = socket.socket()
server.bind(('127.0.0.1',8899))
server.listen(5)
while 1:
print("server is working....")
conn,addr = server.accept()
while 1:
dic_json = conn.recv(1024).decode('utf8')
dic = json.loads(dic_json)
print(dic)
operate = dic.get('operate')
file_name = dic.get('file_name')
file_size = dic.get('file_size')
conn.send(b'200')
with open(file_name,'wb') as f:
recv_len = 0
while recv_len < file_size:
line = conn.recv(1024)
recv_len += len(line)
f.write(line)
print('接收完成,接收了%s,发送了%s' % (recv_len,file_size))
print('接收完成')
conn.close()
服务端代码
客户端代码
import socket
import os
import json
client = socket.socket()
client.connect(('127.0.0.1',8899))
while 1:
cmd =