1

我正在尝试使用由 Dinnerbone(游戏开发者之一)编写的 python 类查询 Minecraft 服务器。当我尝试查询它时,我收到错误消息“在数据报套接字上发送的消息大于内部消息缓冲区或其他网络限制,或者用于接收数据报的缓冲区小于数据报本身”。据我了解,这似乎是 UDP 本身的物理限制。

我不完全确定是什么原因造成的,或者我能做些什么。

该课程可以在这里找到:https ://github.com/Dinnerbone/mcstatus/blob/master/minecraft_query.py

感谢任何建议,因为错误不会显示在命令提示符窗口中,但是在通过 Django 运行时会出错。

4

1 回答 1

2

您遇到的问题是脚本试图将数据包读入一个太小而无法容纳它的缓冲区。这似乎发生在脚本的第 42 行:

buff = self.socket.recvfrom(1460)[0]

尝试将缓冲区大小从 1460 更改为更大的值。

于 2012-12-26T23:38:03.947 回答