一、文件上传/下载

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()
服务端代码

相关文章: