zoukankan      html  css  js  c++  java
  • ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接

    socket服务端在接收socket客户端时抛出异常

    ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。

    socket服务端代码

    #-*- coding:utf-8 -*-
    # Author: Jiang Zu Xing
    import socket,time
    socketserver=socket.socket()
    host="0.0.0.0"
    port=9999
    socketserver.bind((host,port))
    socketserver.listen(5)
    while True:
        client,addr=socketserver.accept()
        print("连接来自:",addr)
        msg="显示服务器返回数据"
        while True:
            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
    import socket,time
    socket_client=socket.socket()
    host="192.168.1.35"
    port=9999
    data="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 <module>
        data = client.recv(1024)
    ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。
    

    出现问题:

    刚刚学习socket写的练手脚本,出现以上异常有两个原因

    1、服务器端Receive数据时,关闭了客户端就会强制关闭连接,就会出现上面的错误提示;

    2、客户端线程执行完,if not data 写错,不能跳出循环导致出错。所以写是if not data ,是用来判断客户端线程是否结束,然后执行退出。

    建议:

    在接收完数据后退出死循环,不要让recv()函数阻塞住,关闭客户端(文件发送端)前建议发送一个消息告诉服务器端(文件接收方)“我要断开连接了”,然后两方都关闭连接close

  • 相关阅读:
    2019.3.18 IP通信基础
    2019.3.11 IP通信基础
    2019.3.7 IP通信基础
    2019.3.4 IP通信基础
    员工贷项目优劣点总结
    mysql事务_事务隔离级别详解
    mysql锁
    mybatis错误——java.io.IOException: Could not find resource com/xxx/xxxMapper.xml
    小问题
    关于char是否能表示一个中文
  • 原文地址:https://www.cnblogs.com/zuxing/p/7687401.html
Copyright © 2011-2022 走看看