socket服务器和客户端连接

错误:

OSError: [WinError 10057] 由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受。

 

先看报错的代码:

#接受客户端请求
client_socket,client_addr = s.accept()
cont = s.recv(1024).decode('utf8')

这个地方报错,错误就是上面所列错误,经发现错误是在于第二行的 s 上,

针对这个错误,我的理解时(可不一定正确,可绕行):

这里s是服务器和客户端之间建立的一个链接,在打开服务器的时候就创建了,

这里接受请求时,应该是客户端向服务器发出请求时所建立的一个链接,所以修改代码

#接受客户端请求
client_socket,client_addr = s.accept()
cont = client_socket.recv(1024).decode('utf8')

这里的client_socket 就是第一行拆包,得出的一个客户端连接。

修改之后服务器和客户端就能正常交互。

 

你可能感兴趣的:(socket服务器和客户端连接)