【问题标题】:socket.io reconnecting should break after n attemptssocket.io 重新连接应该在 n 次尝试后中断
【发布时间】:2026-02-10 21:50:01
【问题描述】:

我正在研究 socket.io,我是新手。在尝试重新连接 n 次后,我试图断开连接。

服务器端代码: var io = require('socket.io').listen(4000);

  io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
   socket.on('my other event', function (data) {
     console.log(data);
   });
  });

客户端代码是:

  <script src="http://localhost:4000/socket.io/socket.io.js"></script>
    <script>
     //var max_reconnects, socket;

     var max_reconnects = 5;
      var socket = io.connect('http://localhost:4000',
          {'reconnection delay': 100,
           'max reconnection attempts': max_reconnects,
             'reconnection limit' : 10});

     socket.on('news', function (data) {
      console.log(data);
      socket.emit('my other event', { my: 'data' });
    });

           socket.on("reconnecting", function(delay, attempt) {
        console.log("attempting reconnect - " + attempt + "-->" + delay);
         if (delay === max_reconnects) {
          //return console.log("all reconnect attempts failed");
            //socket.disconnect();
            //socket.server.close();
            socket.emit('forceDisconnect');
            console.log("Limited end");
         }

       });

请指导我如何在尝试多次后终止重新连接活动。给定的代码无法正常工作。并且重新连接回调尝试也是未定义的。请指导我

【问题讨论】:

    标签: node.js socket.io


    【解决方案1】:

    您是否使用 socket.io >= 1.0 但使用了之前的示例(有一些更改)?

    在此处查看正确的参数:https://github.com/Automattic/socket.io-client#managerurlstring-optsobject

    var socket = io.connect('http://localhost:4000',
          {'reconnectionDelay': 100,
           'reconnectionAttempts': max_reconnects});
    

    【讨论】:

      最近更新 更多