2016-11-08 6 views
-1

Ich erstelle einen UDP-Socket und sende Daten an eine Adresse, die nicht abhört. Beim nächsten Versuch, Daten zu empfangen, schlägt der Fehler [WinError 10054] An existing connection was forcibly closed by the remote host fehl. Als Beispiel wird dieser Code in der letzten Zeile fehlerhaft sein. Warum und wie kann ich es reparieren?Fehler beim Versuch, von einem UDP-Socket zu lesen

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
s.sendto(bytes("A", 'utf-8'), ("127.0.0.1", 5000)) 
s.recvfrom(128) 
+0

Fix it? Hast du in Betracht gezogen, an eine Adresse zu senden, die * zuhört? Sie haben einen Fehler verursacht, Sie haben einen Fehler erhalten. Was ist zu reparieren? – EJP

Antwort

1

ich ein UDP-Sockets und Daten an eine Adresse senden, der nicht

Die Antwort in der Frage ist zu hören. Stellen Sie nur sicher, dass es eine serverseitige Logik gibt, um Daten zurück zu senden. Andernfalls sendet das Betriebssystem eine ICMP-Nachricht an Ihre App zurück, die besagt, dass an diesem Port nichts abgehört wird, wodurch [WinError 10054], über das Sie berichten, ausgelöst wird. BTW, UDP ist im Wesentlichen ein verbindungsloses Protokoll, die Fehlermeldung kann nicht genau sein.

Verwandte Themen