无法使用套接字发送文件python

问题描述

我想使用Django网站将文件发送到我的计算机。我想通过我的网站将文件从一台计算机发送到另一台计算机。

我拒绝了[Errno 111]连接

客户代码:

class Server:

    def __init__(self):
        self.connect_client()
        self.input_blend_file = open('data/proba.blend','wb')
        self.buffer = memoryview(bytearray(1024 * 1024 * 10))
        self.num_bytes = 1
        self.receive_file()
        self.close_connection(self.server_socket)

    def receive_file(self):
        while self.num_bytes:
            self.toread = 1024 * 1024 * 10
            self.view = self.buffer[:]
            while self.toread:
                self.num_bytes = self.conn.recv_into(self.view,self.toread)
                self.view = self.view[self.num_bytes:]
                self.toread -= self.num_bytes
                if self.num_bytes == 0:
                    self.buffer = self.buffer[:-self.toread]
                    break

            self.input_blend_file.write(self.buffer)
        self.input_blend_file.close()

    def connect_client(self):
        self.server_socket = socket.socket()
        self.server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
        self.server_socket.bind(('',80))
        self.server_socket.listen(1)
        self.conn,self.address = self.server_socket.accept()

    def close_connection(self,choosed_socket):
        choosed_socket.close()

网站代码:

class FileReceiver:

def __init__(self,file,ip_client):
    self.infile_name = file
    self.ip_client = ip_client
    self.send_file_server()

def connect_server(self):
    self.client_socket = socket.socket()
    self.client_socket.connect((self.ip_client,80))

def send_file_server(self):
    self.connect_server()
    self.sf = self.client_socket.fileno()
    self.lf = open(self.infile_name,'rb')
    self.client_socket.sendfile(self.lf)

    self.close_connection(self.client_socket)

def close_connection(self,choosed_socket):
    choosed_socket.close()

我的问题在这条线上:

    self.client_socket.connect((self.ip_client,80))

我打开了机器上的端口,但是它不起作用。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...