我正在尝试接收数据,但是这需要永远的时间。
我尝试了几件事,例如更改Buffer的大小,但是我仍然没有运气。这是为了让我相信这可能不是我的代码错误,而是网络错误。
import socket
UDP_IP = ''
UDP_PORT = 1500
BUFFER_SIZE = 1024
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
print("about to bind")
sock.bind((UDP_IP, UDP_PORT))
while True:
try:
print('testing')
message = sock.recv(BUFFER_SIZE)
print("Got data:", repr(message))
except KeyboardInterrupt:
break
我希望通过网络收到一条消息。感谢所有提前答复的人。
答案 0 :(得分:1)
您的代码按预期工作:它接收消息并打印出来。
我使用以下命令对其进行了测试:
echo Hello | nc -u 127.0.0.1 1500
确保您的路由器和本地防火墙允许您的UDP通信通过。