最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何停止Socket.io spaming连接?

运维笔记admin21浏览0评论

如何停止Socket.io spaming连接?

如何停止Socket.io spaming连接?

我正在制作一个socket.io聊天应用程序。当我启动服务器或进行第一次连接时,它会阻止回调。在服务器停止之前,回调不会停止。我认为错误来自html文件,但我不确定。感谢您的时间。 IO回调:

io.sockets.on('connection', (socket) =>{
  connections.push('socket')
  console.log('Connection made \n ' + connections.length + ' made')

  socket.on('disconnect', function(data){
  connections.splice(connections.indexOf(socket), 1)
  console.log('Disconnected: %s sockets left', connections.length)
  })
})

我的HTML文件:

<!DOCTYPE html>
<html>
  <head>
    <title>Chat App</title>
    <link rel="stylesheet" href=".3.6/css/bootstrap.min.css">
    <script src=".io/2.2.0/socket.io.js"></script>
    <script src=".min.js"></script>
    <style>
        body{
          margin: 30px;
        }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="row">
        <div class="col-md-4">
          <div class="well">
            <h3>Online Users</h3>
            <ul class="list-group" id="users"></ul>
          </div>
        </div>
        <div class="col-md-8">
          <div class="chat" id="chat"></div>
          <form id="messageForm">
            <div class="form-group">
              <label>Enter Message</label>
              <textarea id="message" class="form-control"></textarea>
              <br>
              <input type="submit" class="btn btn-primary" value="Send">
            </div>
          </form>
        </div>
      </div>
    </div>
      <script>
        var socket = io()
      </script>
  </body>
</html>
回答如下:

问题在第2行。你正在推动string,即'socket'connections'socket'没有引用参数中的socket变量。你需要推动socket而不是'socket',因为它只是字母组合而不是变量

io.sockets.on('connection', (socket) =>{
  connections.push(socket) // this line is changed
  console.log('Connection made \n ' + connections.length + ' made')

  socket.on('disconnect', function(data){
  connections.splice(connections.indexOf(socket), 1)
  console.log('Disconnected: %s sockets left', connections.length)
  })
})
发布评论

评论列表(0)

  1. 暂无评论