Python客户端-服务器程序

时间:2020-07-06 12:47:17

标签: python-3.x class sockets

socket.connect()在 init (自身)中无法正常工作 这是所需的/已修改的代码

from socket import AF_INET, socket, SOCK_STREAM
import os
import time

class FileClient:
    fileHOST = "localhost"
    filePORT = 9999
    fileADDR = (fileHOST, filePORT)
    fileBUFSIZ = 512

    def __init__(self, filename):
        client = socket(AF_INET, SOCK_STREAM)
        client.bind(("localhost", 2424))
        client.connect(fileADDR)

我想从 init 内部执行连接,因为我需要一个文件名

当我将变量Host,Port,... socket(AF_INET,SOCK_STREAM)放置到类文件之外时,connect(...)起作用。

我从主程序调用班级文件: 我还没有初始化我的课程。

from cclient import cClient
from FileTransfer.fileclient import FileClient
import socket
import time
from threading import Thread

cClient的源代码

class cClient:
    HOST = "localhost"
    PORT = 5555
    ADDR = (HOST, PORT)
    BUFSIZ = 512

    def __init__(self, name):
        print("INIT cclient called")
        self.client_socket = socket(AF_INET, SOCK_STREAM)
        self.client_socket.bind((self.HOST, 2527))
        self.client_socket.connect(self.ADDR)
        print("Am I connected?")

“我连接了吗?”出现,仍然在我的服务器上看不到该连接,但在netstat中-是的。

仅当我在fileclient.py

init (self)内部使用connect(self.ADDR)时,才会出现此问题。

如果不清楚,我将详细解释。

0 个答案:

没有答案