socket.io 无法通过数组抛出发射

socket.io not able to pass array threw emit

我一直在开发某种类型的游戏,我必须将地图作为数组传递给玩家。我已经看过其他建议将数组作为对象传递的帖子,但这会产生以下问题: 1.用户没有收到对象或数组 2. 我有一个脚本,每当客户端连接(断开)连接时都会记录,它向我显示客户端始终连接和断开连接。 (可能是客户端超时重连??)

服务器代码如下所示:

io.sockets.on('connection', onConnect);

function onConnect(socket) {
  console.log("We have a new client: " + socket.id);
  socket.emit('field', {fields});

  socket.on('disconnect', function() {
    console.log("Client " + socket.id + " has disconnected!");
  });
}

以及客户端代码:

socket = io.connect('http://localhost:3000');

socket.on("field",
  function(data) {
    console.log(data);
  }
);

我可以传递数组的单个对象,但不能传递整个对象...

编辑: 代码本身适用于字符串,但不适用于我想要传递的数组...

我发现 socket.io 无法发出大型数组(最大数组长度略小于 8000(数组中填充了包含 2 个属性的对象))。可能这是某种类型的存储错误(可能是用户特定的)...