realpython / realpython/materials
Multiconnection server can't handle Connection Reset events
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Jupyter Notebook
- Sterne
- 5.2k
- Forks
- 5.3k
- Ø Merge
- 4 T. 10 Std.
- Gemergte PRs (30 T.)
- 10
Beschreibung
It seems the Muli-connection server example doesn't properly handle the Connection Reset Error;
Traceback (most recent call last):
File "server.py", line 65, in <module>
service_connection(key, mask)
File "server.py", line 24, in service_connection
recv_data = sock.recv(1024) # Should be ready to read
ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host
This error occurs when, for example, the Windows Command Prompt running the client.py (connected to the server) is closed. In this case, a peer reset is sent to the server, but since the server can't handle it, it simply exits with the above error.
Is there any specific event to catch this error and avoid breaking the server?
Thanks
SS
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit server.py, insbesondere mit service_connection in Zeile 24 und dem Aufruf der Ereignisschleife in Zeile 65. Reproduziere das Problem, indem du die Windows-Clientverbindung schließt, und überprüfe anschließend, dass der Server den Reset behandelt und weiterhin andere Verbindungen bedient, anstatt mit ConnectionResetError zu beenden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- networking
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 55/100