socket服务端在接收socket客户端时抛出异常
ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。
socket服务端代码
#-*- coding:utf-8 -*-#Author: Jiang Zu Xing
importsocket,time
socketserver=socket.socket()
host=”0.0.0.0″port=9999socketserver.bind((host,port))
socketserver.listen(5)whileTrue:
client,addr=socketserver.accept()print(“连接来自:”,addr)
msg=”显示服务器返回数据”
whileTrue:print(“准备接收数据”)
data= client.recv(1024)print(“接收数据完毕”)if data ==0:print(“no data”)break
else:print(data.decode(‘utf-8‘))
client.send(msg.encode())
client.close()
socketserver.close()
socket客户端代码
#-*- coding:utf-8 -*-#Author: Jiang Zu Xing
importsocket,time
socket_client=socket.socket()
host=”192.168.1.35″port=9999data=”222″socket_client.connect((host,port))print(“开始发送”)
socket_client.send(data.encode())print(“开始接收”)
msg=socket_client.recv(1024)print(“接收结束”)print(msg.decode(‘utf-8‘))
time.sleep(100)
异常
Traceback (most recent call last):
File “C:/Users/Administrator/Desktop/jiang/python/demo/ 络编程/socket_server.py”, line 15, in
data = client.recv(1024)
ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。
出现问题:
刚刚学习socket写的练手脚本
服务器端Receive数据时,关闭了客户端就会强制关闭连接,就会出现上面的错误提示。
建议:
在接收完数据后退出死循环,不要让recv()函数阻塞住,关闭客户端(文件发送端)前建议发送一个消息告诉服务器端(文件接收方)“我要断开连接了”,然后两方都关闭连接close
相关资源:PHP寄生虫繁殖劫持程序V3.0_寄生虫程序-PHP代码类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!