Python 3.x 尝试从UDP套接字读取时出错
我创建了一个UDP套接字,并将数据发送到一个未侦听的地址。下次我尝试接收数据时,它失败,出现错误Python 3.x 尝试从UDP套接字读取时出错,python-3.x,sockets,udp,python-3.4,Python 3.x,Sockets,Udp,Python 3.4,我创建了一个UDP套接字,并将数据发送到一个未侦听的地址。下次我尝试接收数据时,它失败,出现错误[WinError 10054]远程主机强制关闭了现有连接。例如,此代码将在最后一行出错。为什么以及如何修复它 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.sendto(bytes("A", 'utf-8'), ("127.0.0.1", 5000)) s.recvfrom(128) 我创建了一个UDP套接字,并将数据发送到一个未侦听
[WinError 10054]远程主机强制关闭了现有连接。例如,此代码将在最后一行出错。为什么以及如何修复它
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(bytes("A", 'utf-8'), ("127.0.0.1", 5000))
s.recvfrom(128)
我创建了一个UDP套接字,并将数据发送到一个未侦听的地址
答案在问题中。只需确保有一个服务器端逻辑将数据发送回您即可。
否则,操作系统将向您的应用程序发回一条ICMP消息,说明该端口上没有任何侦听内容,这将触发您正在报告的[WinError 10054]。顺便说一句,UDP本质上是一种无连接协议,错误消息不可能准确。修复它?您是否考虑过发送到正在侦听的地址?你造成了一个错误,你得到了一个错误。要修什么?