(聊天室)使用套接字通常只允许一个地址(协议/网络地址/端口)

2024-10-04 17:20:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个oop风格的聊天室,但套接字无法正常工作

错误:

File "D:/Master/Chat/client_chat.py", line 10, in init self.client.bind(self.SERVER) OSError: [WinError 10048] Usually only one address is allowed using a socket (protocol / network address / port)

服务器部件:

import socket

class Server:
    def __init__(self):
        self.ADDR = "localhost"
        self.PORT = 5454
        self.SERVER = (self.ADDR, self.PORT)
        self.server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.server.bind(self.SERVER)
        self.server.listen()
        self.conn, self.addr = self.server.accept()
        self.message = self.conn.recv(64).decode('utf-8')
        print("[SERVER RUNNING]")

    def receive_message(self):
        return self.message


def main():
    print(Server())


if __name__ == '__main__':
    main()

客户部分:

import socket


class Client:
    def __init__(self):
        self.ADDR = "localhost"
        self.PORT = 5454
        self.SERVER = (self.ADDR, self.PORT)
        self.client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.client.bind(self.SERVER)
        self.client.connect(self.SERVER)
        self.msg_inp = input().encode('utf-8')

    def send_message(self):
        return self.msg_inp


def main():
    print(Client())


if __name__ == '__main__':
    main()

更改端口没有帮助


热门问题