Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
I';我的Python套接字程序有问题[WinError 10057]_Python_Sockets_Networking_Ip - Fatal编程技术网

I';我的Python套接字程序有问题[WinError 10057]

I';我的Python套接字程序有问题[WinError 10057],python,sockets,networking,ip,Python,Sockets,Networking,Ip,我正在编写一个简单的客户机-服务器套接字程序,该程序在两台不同的计算机上运行。 服务器是具有静态ip地址的台式机,客户端是连接到Wi-Fi的笔记本电脑。两者都使用Windows10作为操作系统。 我还打开了防火墙端口 这是我的密码。 此代码在一台计算机中运行良好,但当另一台计算机(我的笔记本电脑)尝试连接到服务器时,会出现WinError 10057 server.py from socket import * import sys HOST = '0.0.0.0' PORT = 16161

我正在编写一个简单的客户机-服务器套接字程序,该程序在两台不同的计算机上运行。 服务器是具有静态ip地址的台式机,客户端是连接到Wi-Fi的笔记本电脑。两者都使用Windows10作为操作系统。 我还打开了防火墙端口

这是我的密码。 此代码在一台计算机中运行良好,但当另一台计算机(我的笔记本电脑)尝试连接到服务器时,会出现WinError 10057

server.py

from socket import *
import sys

HOST = '0.0.0.0'
PORT = 16161
BUFSIZE = 1024
ADDR = (HOST, PORT)
CLIENT_NUM = 5

serverSocket = socket(AF_INET, SOCK_STREAM)

serverSocket.bind(ADDR)
print('bind')

serverSocket.listen(CLIENT_NUM)
print('listen')

while True:
    try:
        connectionSocket, addr_info = serverSocket.accept()
        print('accept')
        print('--client information--')
        print(connectionSocket)

        data = connectionSocket.recv(BUFSIZE)
        print('Received data:', data.decode())
        connectionSocket.send('OK'.encode())
        connectionSocket.close()

    except KeyboardInterrupt:
        sys.exit(0)
client.py

from socket import *
import sys

HOST = '*.*.*.*'    # server's ip address
PORT = 16161
BUFSIZE = 1024
ADDR = (HOST, PORT)

clientSocket = socket(AF_INET, SOCK_STREAM)

try:
    clientSocket.connect_ex(ADDR)
    clientSocket.send('Hello!'.encode())    # WinError 10057 occurs
except Exception as e:
    print(e)
    print('%s:%s' % ADDR)
    sys.exit(1)

print('connect is success')

receive = clientSocket.recv(BUFSIZE)
print(receive.decode())

clientSocket.close()

我已经修好了。我要求我的组织打开防火墙端口,当防火墙端口打开时连接成功。

您确定“服务器的ip地址”是您桌面的本地ip而不是公共ip吗?服务器的ip地址不是专用ip(例如,10.0.0.0~10.255.255.255、172.16.0.0~172.31.255.255或192.168.0.0~192.168.255.255)。我已将此ip地址分配为静态ip。
connect_ex()
方法返回成功/错误代码。您得到的返回是什么?connect_ex()返回10060。